# generated: 2021-08-27 17:33:49 +0200 require 'openssl' require 'nokogiri' module PaloAlto # https://github.com/teamcapybara/xpath - MIT license module DSL def relative(*expressions) Expression.new(:relative, current, expressions) end def root(*expressions) Expression.new(:root, current, expressions) end def current Expression.new(:this_node) end def descendant(*expressions) Expression.new(:descendant, current, expressions) end def child(*expressions) Expression.new(:child, current, expressions) end def axis(name, *element_names) Expression.new(:axis, current, name, element_names) end def anywhere(*expressions) Expression.new(:anywhere, expressions) end def xpath_attr(expression) Expression.new(:attribute, current, expression) end def text Expression.new(:text, current) end def css(selector) Expression.new(:css, current, Literal.new(selector)) end def function(name, *arguments) Expression.new(:function, name, *arguments) end def method(name, *arguments) if name!=:not Expression.new(:function, name, current, *arguments) else Expression.new(:function, name, *arguments) end end def where(expression) if expression Expression.new(:where, current, expression) else current end end #alias_method :[], :where def is(expression) Expression.new(:is, current, expression) end def binary_operator(name, rhs) Expression.new(:binary_operator, name, current, rhs) end def union(*expressions) Union.new(*[self, expressions].flatten) end alias_method :+, :union def last function(:last) end def position function(:position) end METHODS = [ # node set :count, :id, :local_name, :namespace_uri, # string :string, :concat, :starts_with, :contains, :substring_before, :substring_after, :substring, :string_length, :normalize_space, :translate, # boolean :boolean, :not, :true, :false, :lang, # number :number, :sum, :floor, :ceiling, :round ].freeze METHODS.each do |key| name = key.to_s.tr('_', '-').to_sym define_method key do |*args| method(name, *args) end end def qname method(:name) end alias_method :inverse, :not alias_method :~, :not alias_method :!, :not alias_method :normalize, :normalize_space alias_method :n, :normalize_space OPERATORS = [ %i[equals = ==], %i[or or |], %i[and and &], %i[not_equals != !=], %i[lte <= <=], %i[lt < <], %i[gte >= >=], %i[gt > >], %i[plus +], %i[minus -], %i[multiply * *], %i[divide div /], %i[mod mod %] ].freeze OPERATORS.each do |(name, operator, alias_name)| define_method name do |rhs| binary_operator(operator, rhs) end alias_method alias_name, name if alias_name end AXES = %i[ ancestor ancestor_or_self attribute descendant_or_self following following_sibling namespace parent preceding preceding_sibling self ].freeze AXES.each do |key| name = key.to_s.tr('_', '-').to_sym define_method key do |*element_names| axis(name, *element_names) end end alias_method :self_axis, :self def ends_with(suffix) function(:substring, current, function(:'string-length', current).minus(function(:'string-length', suffix)).plus(1)) == suffix end def contains_word(word) function(:concat, ' ', current.normalize_space, ' ').contains(" #{word} ") end UPPERCASE_LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞŸŽŠŒ' LOWERCASE_LETTERS = 'abcdefghijklmnopqrstuvwxyzàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿžšœ' def lowercase method(:translate, UPPERCASE_LETTERS, LOWERCASE_LETTERS) end def uppercase method(:translate, LOWERCASE_LETTERS, UPPERCASE_LETTERS) end def one_of(*expressions) expressions.map { |e| current.equals(e) }.reduce(:or) end def next_sibling(*expressions) axis(:'following-sibling')[1].axis(:self, *expressions) end def previous_sibling(*expressions) axis(:'preceding-sibling')[1].axis(:self, *expressions) end end extend PaloAlto::DSL include PaloAlto::DSL def self.generate yield(self) end class Union include Enumerable attr_reader :expressions alias_method :arguments, :expressions def initialize(*expressions) @expressions = expressions end def expression :union end def each(&block) arguments.each(&block) end def method_missing(*args) # rubocop:disable Style/MethodMissingSuper, Style/MissingRespondToMissing PaloAlto::Union.new(*arguments.map { |e| e.send(*args) }) end def to_xpath(type = nil) Renderer.render(self, type) end end class Literal attr_reader :value def initialize(value) @value = value end end class Renderer def self.render(node, type) new(type).render(node) end def initialize(type) @type = type end def render(node) arguments = node.arguments.map { |argument| convert_argument(argument) } send(node.expression, *arguments) end def convert_argument(argument) case argument when Expression, Union then render(argument) when Array then argument.map { |element| convert_argument(element) } when String then string_literal(argument) when Literal then argument.value else argument.to_s end end def string_literal(string) if string.include?("'") string = string.split("'", -1).map do |substr| "'#{substr}'" end.join(%q(,"'",)) "concat(#{string})" else "'#{string}'" end end def this_node '.' end def binary_operator(name, left, right) "#{left}#{name}#{right}".gsub('./@', '@') end def root(current, element_names) element_names.any? ? "/#{element_names.join('/')}" : '' end def relative(current, element_names) '.' end def descendant(current, element_names) with_element_conditions("#{current}//", element_names) end def child(current, element_names) with_element_conditions("#{current}/", element_names) end def axis(current, name, element_names) with_element_conditions("#{current}/#{name}::", element_names) end def anywhere(element_names) with_element_conditions('//', element_names) end def where(on, condition) "#{on}[#{condition}]" end def attribute(current, name) if valid_xml_name?(name) "#{current}/@#{name}" else "#{current}/attribute::*[local-name(.) = #{string_literal(name)}]" end end def is(one, two) if @type == :exact binary_operator('=', one, two) else function(:contains, one, two) end end def variable(name) "%{#{name}}" end def text(current) "#{current}/text()" end def literal(node) node end def css(current, selector) paths = Nokogiri::CSS.xpath_for(selector).map do |xpath_selector| "#{current}#{xpath_selector}" end union(paths) end def union(*expressions) expressions.join(' | ') end def function(name, *arguments) "#{name}(#{arguments.join(', ')})" end private def with_element_conditions(expression, element_names) if element_names.length == 1 "#{expression}#{element_names.first}" elsif element_names.length > 1 "#{expression}*[#{element_names.map { |e| "self::#{e}" }.join(' | ')}]" else "#{expression}*" end end def valid_xml_name?(name) name =~ /^[a-zA-Z_:][a-zA-Z0-9_:\.\-]*$/ end end class Expression include PaloAlto::DSL attr_accessor :expression, :arguments def initialize(expression, *arguments) @expression = expression @arguments = arguments end def current self end def to_xpath(type = nil) Renderer.render(self, type) end end class XML class ConfigClass < Expression attr_reader :api_attributes, :subclasses attr_accessor :parent_instance def initialize(parent_instance:, create_children: false) @parent_instance = parent_instance @subclasses = {} @values = {} @create_children = create_children @external_values = {} # data we received and don't need to set again @api_attributes={} @expression = :child unless self.is_a?(ArrayConfigClass) # for ArrayConfigClass, it will be set externally after the constructor xpath_argument = @parent_instance @arguments = [ xpath_argument, [_section] ] end end class << self attr_accessor :props end def create! @create_children = true self end attr_reader :parent_instance attr_accessor :force_relative def inspect self.to_s[0..-1] + ' ' + self.values(full_tree: false).map{|k,v| "#{k}: #{v.inspect}"}.join(", ") + ">" end def get_all raise(InvalidCommandException, "please use 'get' here") if self.class.superclass != ArrayConfigClass payload = { type: "config", action: "get", xpath: self.to_xpath } data = XML.execute(payload) start_time=Time.now result = self.parent_instance.dup.create!.clear!.external_set(data.xpath('//response/result').first) if XML.debug.include?(:statistics) puts "Elapsed for parsing #{result.length} results: #{Time.now-start_time} seconds" end result end def clear! @subclasses = {} @values = {} self end def get(ignore_empty_result: false, xpath: self.to_xpath) if self.class.superclass == ArrayConfigClass && !@selector raise(InvalidCommandException, "Please use 'get_all' here") end payload = { type: 'config', action: 'get', xpath: xpath } data = XML.execute(payload) start_time=Time.now if data.xpath('//response/result/*').length != 1 if ignore_empty_result==false raise(ObjectNotPresentException, "empty result: #{payload.inspect}") end else #self.parent_instance.dup.create!.clear!.external_set(data.xpath('//response/result').first).first @create_children=true n = data.xpath('//response/result/*') clear! external_set(n.first) if is_a?(ArrayConfigClass) primary_key = get_primary_key(n.first.attribute_nodes, self.class.props) set_array_class_attributes(n.first, primary_key) # primary key, api_attributes end end if XML.debug.include?(:statistics) puts "Elapsed for parsing: #{Time.now-start_time} seconds" end self end def get_primary_key(attribute_nodes, props) primary_key_attr = attribute_nodes.find{|attr| props.keys.find{|k| k=="@#{attr.name}"} } Hash[primary_key_attr.name.to_sym, primary_key_attr.value] end def set_array_class_attributes(child, primary_key) @external_values.merge!({ '@' + primary_key.keys.first.to_s => primary_key.values.first}) # save also the other attributes like loc and uuid, if set child.attribute_nodes.each{|attr| next if attr.name.to_sym == primary_key.keys.first api_attributes[attr.name] = attr.value } end def external_set(data) data.element_children.map{|child| child.name.match(/\A[a-zA-Z0-9_-]*\z/) or raise 'invalid character' if prop = self.class.props[child.name] if has_multiple_values? @external_values[child.name]||=[] @external_values[child.name] << enforce_type(prop, child.text) else @external_values[child.name] = enforce_type(prop, child.text) end elsif new_class=eval('self.class::' + child.name.capitalize.gsub(/-(.)/) {|e| $1.upcase}) rescue false # check for class name in camelcase format if new_class.superclass == ConfigClass subclass = self.send(child.name.gsub('-','_')) elsif new_class.superclass == ArrayConfigClass primary_key = get_primary_key(child.attribute_nodes, new_class.props) subclass = self.send(child.name, primary_key) # create subclass subclass.set_array_class_attributes(child, primary_key) # primary key, api_attributes else raise end subclass.external_set(child) else raise "unknown key: #{child.name}" end subclass } end def enforce_type(prop_arr, value, value_type: prop_arr['type']) case value_type when 'bool' return true if ['yes', true].include?(value) return false if ['no', false].include?(value) raise ArgumentError, 'Not bool: ' + value.inspect when 'string', 'ipdiscontmask', 'iprangespec', 'ipspec', 'rangelistspec' raise(ArgumentError, 'Not string') unless value.is_a?(String) if prop_arr['regex'] raise ArgumentError, "Not matching regex: #{value.inspect} (#{prop_arr["regex"].inspect})" unless value.match(prop_arr["regex"]) end if prop_arr['maxlen'] raise ArgumentError, 'Too long' if value.length > prop_arr['maxlen'].to_i end return value when 'enum' accepted_values = prop_arr.is_a?(Hash) ? prop_arr['enum'].map{|x| x['value']} : prop_arr.map{|x| x['value']} # is an array if part of value_type 'multiple' return value if accepted_values.include?(value) raise ArgumentError, "not allowed: #{value.inspect} (not within #{accepted_values.inspect})" when 'float' return Float(value) when 'rangedint' number = Integer(value) return number if number >= prop_arr['min'].to_i && number <= prop_arr['max'].to_i raise ArgumentError, "not in range #{prop_arr['min']}..#{prop_arr['max']}: #{number}" when 'multiple' prop_arr['multi-types'].keys.each{|key| return enforce_type(prop_arr['multi-types'][key], value, value_type: key) rescue false } raise(ArgumentError, "Nothing matching found for #{value.inspect} (#{prop_arr.inspect})") end end def xml_builder(xml, full_tree: false, changed_only: true) keys = changed_only ? @values.keys : self.class.props.keys keys.map{|k| next if k.start_with?('@') v=prop_get(k, include_defaults: false) next unless v Array(v).each{|val| val='yes' if val==true val='no' if val==false xml.method_missing(k, val) # somehow .send does not work with k==:system } } if full_tree @subclasses.each{|k,subclass| if subclass.is_a?(Hash) subclass.each{|k2, subclass2| xml.send(k, k2){|xml| subclass2.xml_builder(xml, full_tree: full_tree, changed_only: changed_only) } } else xml.method_missing(k){|xml| # somehow .send does not work with k==:system subclass.xml_builder(xml, full_tree: full_tree, changed_only: changed_only) } end } end return xml end def array_class_setter(*args, klass:, section:, &block) # either we have a selector or a block raise(ArgumentError, "wrong number of arguments (expected one argument or block)") unless (args.length==1 && !block) || (args.empty? && block) entry = klass.new(parent_instance: self, create_children: @create_children) if block obj = self.child(section.to_sym).where(PaloAlto.instance_eval(&block)) entry.expression = obj.expression entry.arguments = obj.arguments entry else selector=args[0] @subclasses[section]||= {} entry.instance_variable_get('@external_values').merge!({"@#{selector.keys.first}" => selector.values.first}) entry.selector = selector entry.set_xpath_from_selector if @create_children @subclasses[section][selector] ||= entry else entry end end end def values(full_tree: true, include_defaults: true) h={} self.class.props.keys.map{|k| prop = prop_get(k, include_defaults: include_defaults) h[k] = prop if prop } if full_tree @subclasses.each{|k,subclass| if subclass.is_a?(Hash) h[k]||={} subclass.each{|k2, subclass2| h[k][k2]=subclass2.values(full_tree: true, include_defaults: include_defaults) } else h[k]=subclass.values(full_tree: true, include_defaults: include_defaults) end } end return h end def set_values(h, external: false) if h.is_a?(PaloAlto::XML::ConfigClass) h=h.values(include_defaults: false) end raise(ArgumentError, 'needs to be a Hash') unless h.is_a?(Hash) clear! create! h.each{|k,v| if v.is_a?(Hash) self.send(k.to_s.gsub('-','_')).set_values(v, external: external) else if external @external_values[k]=v else self.prop_set(k,v) end end } self end def prop_get(prop, include_defaults: true) my_prop = self.class.props[prop] if @values.has_key?(prop) return @values[prop] elsif @external_values.has_key?(prop) && @external_values[prop].is_a?(Array) return @values[prop] = @external_values[prop].dup elsif @external_values.has_key?(prop) return @external_values[prop] elsif my_prop.has_key?("default") && include_defaults return enforce_type(my_prop, my_prop['default']) else return nil end end def prop_set(prop, value) my_prop = self.class.props[prop] or raise(InternalErrorException, "Unknown attribute for #{self.class}: #{prop}") if has_multiple_values? && value.is_a?(String) value = value.split(/\s+/) end if value.is_a?(Array) @values[prop] = value.map{|v| enforce_type(my_prop, v)} elsif value.nil? @values[prop] = nil else @values[prop] = enforce_type(my_prop, value) end end def to_xml(changed_only:, full_tree:, include_root: ) builder = Nokogiri::XML::Builder.new{|xml| xml.send(self._section, (self.selector rescue nil)) { self.xml_builder(xml, changed_only: changed_only, full_tree: full_tree) } } if include_root builder.doc.root.to_xml else builder.doc.root.children.map(&:to_xml).join("\n") end end def push! xml_str = self.to_xml(changed_only: false, full_tree: true, include_root: true) payload = { type: 'config', action: 'edit', xpath: self.to_xpath, element: xml_str } XML.execute(payload) end def delete_child(name) @subclasses.delete(name) && true || false end def delete! payload = { type: 'config', action: 'delete', xpath: self.to_xpath } XML.execute(payload) end def multimove!(dst:, members:, all_errors: false) source = self.to_xpath builder = Nokogiri::XML::Builder.new{|xml| xml.root { xml.send('selected-list') { xml.source(xpath: source) { members.each{|member| xml.member member} } } xml.send('all-errors', all_errors ? 'yes' : 'no') } } element = builder.doc.root.children.map(&:to_xml).join("\n") payload = { type: 'config', action: 'multi-move', xpath: dst, element: element } XML.execute(payload) end end class ArrayConfigClass < ConfigClass attr_accessor :selector def move!(where:, dst: nil) payload = { type: 'config', action: 'move', xpath: self.to_xpath, where: where } if dst payload[:dst] = dst end XML.execute(payload) end def set_xpath_from_selector(selector: @selector) xpath = self.parent_instance.child(_section) k,v=selector.first obj = xpath.where(PaloAlto.xpath_attr(k.to_sym) == v) @expression = obj.expression @arguments = obj.arguments end def rename!(new_name) # https://docs.paloaltonetworks.com/pan-os/10-1/pan-os-panorama-api/pan-os-xml-api-request-types/configuration-api/rename-configuration.html payload = { type: 'config', action: 'rename', xpath: self.to_xpath, newname: new_name } result = XML.execute(payload) # now update also the internal value to the new name self.selector.transform_values!{new_name} @external_values["@#{self.selector.keys.first}"] = new_name set_xpath_from_selector() end end #no end of class Xml here as generated source will be added here class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Predefined < ConfigClass def has_multiple_values? false end def _section :'predefined' end class Threats < ConfigClass def has_multiple_values? false end def _section :'threats' end class PhoneHome < XML::ConfigClass def has_multiple_values? true end def _section :'phone-home' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"255"}, "category"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "severity"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"critical"}, {"value"=>"high"}, {"value"=>"medium"}, {"value"=>"low"}, {"value"=>"informational"}]}, "host"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"client"}, {"value"=>"server"}]}, "app"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}} def name prop_get('@name') end def category prop_get('category') end def category=(val) prop_set('category', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end def host prop_get('host') end def host=(val) prop_set('host', val) end def app prop_get('app') end def app=(val) prop_set('app', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PhoneHome def phone_home if @create_children @subclasses['phone-home'] ||= PhoneHome.new(parent_instance: self, create_children: @create_children) else PhoneHome.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AffectedHost < ConfigClass def has_multiple_values? false end def _section :'affected-host' end @props={"client"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "server"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def client prop_get('client') end def client=(val) prop_set('client', val) end def server prop_get('server') end def server=(val) prop_set('server', val) end end # class AffectedHost def affected_host @subclasses['affected-host'] ||= AffectedHost.new(parent_instance: self, create_children: @create_children) end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4096"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"256"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"255"}, "category"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"code-execution"}, {"value"=>"overflow"}, {"value"=>"sql-injection"}, {"value"=>"info-leak"}, {"value"=>"email-worm"}, {"value"=>"net-worm"}, {"value"=>"adware"}, {"value"=>"keylogger"}, {"value"=>"data-theft"}, {"value"=>"phishing"}, {"value"=>"spam"}, {"value"=>"botnet"}, {"value"=>"brute-force"}, {"value"=>"rootkit"}, {"value"=>"trojan"}, {"value"=>"backdoor"}, {"value"=>"virus"}, {"value"=>"email-flooder"}, {"value"=>"spamtool"}, {"value"=>"hacktool"}, {"value"=>"dos"}, {"value"=>"suspicious"}, {"value"=>"other-malware"}, {"value"=>"user-defined"}]}, "severity"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"critical"}, {"value"=>"high"}, {"value"=>"medium"}, {"value"=>"low"}, {"value"=>"informational"}]}} def name prop_get('@name') end def category prop_get('category') end def category=(val) prop_set('category', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end @props={} end # class Threats def threats @subclasses['threats'] ||= Threats.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color19"}, {"value"=>"color20"}, {"value"=>"color21"}, {"value"=>"color22"}, {"value"=>"color23"}, {"value"=>"color24"}, {"value"=>"color25"}, {"value"=>"color26"}, {"value"=>"color27"}, {"value"=>"color28"}, {"value"=>"color29"}, {"value"=>"color30"}, {"value"=>"color31"}, {"value"=>"color32"}, {"value"=>"color33"}, {"value"=>"color34"}, {"value"=>"color35"}, {"value"=>"color36"}, {"value"=>"color37"}, {"value"=>"color38"}, {"value"=>"color39"}, {"value"=>"color40"}, {"value"=>"color41"}, {"value"=>"color42"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def color prop_get('color') end def color=(val) prop_set('color', val) end def comments prop_get('comments') end def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Motd < XML::ConfigClass def has_multiple_values? true end def _section :'motd' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end @props={"message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Message of the day"}, "severity"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"warning"}, {"value"=>"question"}, {"value"=>"error"}, {"value"=>"info"}]}} # Message of the day def message prop_get('message') end # Message of the day def message=(val) prop_set('message', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class Motd def motd if @create_children @subclasses['motd'] ||= Motd.new(parent_instance: self, create_children: @create_children) else Motd.new(parent_instance: self) end end class DefaultSecurityRules < ConfigClass def has_multiple_values? false end def _section :'default-security-rules' end @props={} end # class DefaultSecurityRules def default_security_rules @subclasses['default-security-rules'] ||= DefaultSecurityRules.new(parent_instance: self, create_children: @create_children) end @props={} end # class Predefined def predefined @subclasses['predefined'] ||= Predefined.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end class Ldap < XML::ConfigClass def has_multiple_values? true end def _section :'ldap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"ldap server ip or host name.", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"389", "help-string"=>"default 389 for LDAP, 636 for LDAPS"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap server ip or host name. def address prop_get('address') end # ldap server ip or host name. def address=(val) prop_set('address', val) end # default 389 for LDAP, 636 for LDAPS def port prop_get('port') end # default 389 for LDAP, 636 for LDAPS def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ldap-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"other", "enum"=> [{"value"=>"active-directory"}, {"value"=>"e-directory"}, {"value"=>"sun"}, {"value"=>"other"}]}, "ssl__4"=> {"node-type"=>"element", "prune-on"=>"cc-only-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "ssl__5"=> {"node-type"=>"element", "prune-on"=>"non-cc-only-mode", "type"=>"enum", "default"=>"yes", "enum"=>[{"value"=>"yes"}]}, "verify-server-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify server certificate for SSL sessions"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "base"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"Default base distinguished name (DN) to use for searches"}, "bind-dn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"bind distinguished name"}, "bind-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"121", "encrypt"=>"yes", "help-string"=>"bind password"}, "timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"30", "help-string"=>"number of seconds to wait for performing searches"}, "bind-timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"30", "help-string"=>"number of seconds to use for connecting to servers"}, "retry-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"3600", "help-string"=>"Interval (seconds) for reconnecting LDAP server", "default"=>"60"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def ldap_type prop_get('ldap-type') end def ldap_type=(val) prop_set('ldap-type', val) end def ssl__4 prop_get('ssl__4') end def ssl__4=(val) prop_set('ssl__4', val) end def ssl__5 prop_get('ssl__5') end def ssl__5=(val) prop_set('ssl__5', val) end # Verify server certificate for SSL sessions def verify_server_certificate prop_get('verify-server-certificate') end # Verify server certificate for SSL sessions def verify_server_certificate=(val) prop_set('verify-server-certificate', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Default base distinguished name (DN) to use for searches def base prop_get('base') end # Default base distinguished name (DN) to use for searches def base=(val) prop_set('base', val) end # bind distinguished name def bind_dn prop_get('bind-dn') end # bind distinguished name def bind_dn=(val) prop_set('bind-dn', val) end # bind password def bind_password prop_get('bind-password') end # bind password def bind_password=(val) prop_set('bind-password', val) end # number of seconds to wait for performing searches def timelimit prop_get('timelimit') end # number of seconds to wait for performing searches def timelimit=(val) prop_set('timelimit', val) end # number of seconds to use for connecting to servers def bind_timelimit prop_get('bind-timelimit') end # number of seconds to use for connecting to servers def bind_timelimit=(val) prop_set('bind-timelimit', val) end # Interval (seconds) for reconnecting LDAP server def retry_interval prop_get('retry-interval') end # Interval (seconds) for reconnecting LDAP server def retry_interval=(val) prop_set('retry-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ldap def ldap if @create_children @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) else Ldap.new(parent_instance: self) end end class Radius < XML::ConfigClass def has_multiple_values? true end def _section :'radius' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class CHAP < ConfigClass def has_multiple_values? false end def _section :'CHAP' end @props={} end # class CHAP def CHAP @subclasses['CHAP'] ||= CHAP.new(parent_instance: self, create_children: @create_children) end class PAP < ConfigClass def has_multiple_values? false end def _section :'PAP' end @props={} end # class PAP def PAP @subclasses['PAP'] ||= PAP.new(parent_instance: self, create_children: @create_children) end class PEAPMSCHAPv2 < ConfigClass def has_multiple_values? false end def _section :'PEAP-MSCHAPv2' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "allow-pwd-change"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Allow users to change passwords after expiry"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Allow users to change passwords after expiry def allow_pwd_change prop_get('allow-pwd-change') end # Allow users to change passwords after expiry def allow_pwd_change=(val) prop_set('allow-pwd-change', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPMSCHAPv2 def PEAP_MSCHAPv2 @subclasses['PEAP-MSCHAPv2'] ||= PEAPMSCHAPv2.new(parent_instance: self, create_children: @create_children) end class PEAPWithGTC < ConfigClass def has_multiple_values? false end def _section :'PEAP-with-GTC' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPWithGTC def PEAP_with_GTC @subclasses['PEAP-with-GTC'] ||= PEAPWithGTC.new(parent_instance: self, create_children: @create_children) end class EAPTTLSWithPAP < ConfigClass def has_multiple_values? false end def _section :'EAP-TTLS-with-PAP' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class EAPTTLSWithPAP def EAP_TTLS_with_PAP @subclasses['EAP-TTLS-with-PAP'] ||= EAPTTLSWithPAP.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"RADIUS server IP or host name", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for RADIUS communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1812", "help-string"=>"RADIUS server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # RADIUS server IP or host name def ip_address prop_get('ip-address') end # RADIUS server IP or host name def ip_address=(val) prop_set('ip-address', val) end # Shared secret for RADIUS communication def secret prop_get('secret') end # Shared secret for RADIUS communication def secret=(val) prop_set('secret', val) end # RADIUS server port def port prop_get('port') end # RADIUS server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"120", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"3", "help-string"=>"number of attempts before giving up authentication"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # number of attempts before giving up authentication def retries prop_get('retries') end # number of attempts before giving up authentication def retries=(val) prop_set('retries', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Radius def radius if @create_children @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) else Radius.new(parent_instance: self) end end class Scp < XML::ConfigClass def has_multiple_values? true end def _section :'scp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"SCP hostname"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"22", "help-string"=>"SCP port"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"128", "regex"=>"[^']*", "help-string"=>"SCP username"}, "password"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "regex"=>"[^']*", "help-string"=>"SCP Password", "encrypt"=>"yes"}} # alphanumeric string def name prop_get('@name') end # SCP hostname def server prop_get('server') end # SCP hostname def server=(val) prop_set('server', val) end # SCP port def port prop_get('port') end # SCP port def port=(val) prop_set('port', val) end # SCP username def username prop_get('username') end # SCP username def username=(val) prop_set('username', val) end # SCP Password def password prop_get('password') end # SCP Password def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scp def scp if @create_children @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) else Scp.new(parent_instance: self) end end class Kerberos < XML::ConfigClass def has_multiple_values? true end def _section :'kerberos' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Kerberos server ip or host name.", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"88", "help-string"=>"Kerberos Domain Controller "}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Kerberos server ip or host name. def host prop_get('host') end # Kerberos server ip or host name. def host=(val) prop_set('host', val) end # Kerberos Domain Controller def port prop_get('port') end # Kerberos Domain Controller def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Kerberos def kerberos if @create_children @subclasses['kerberos'] ||= Kerberos.new(parent_instance: self, create_children: @create_children) else Kerberos.new(parent_instance: self) end end class Tacplus < XML::ConfigClass def has_multiple_values? true end def _section :'tacplus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"TACACS+ server ip or host name.", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for TACACS+ communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"49", "help-string"=>"TACACS+ server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # TACACS+ server ip or host name. def address prop_get('address') end # TACACS+ server ip or host name. def address=(val) prop_set('address', val) end # Shared secret for TACACS+ communication def secret prop_get('secret') end # Shared secret for TACACS+ communication def secret=(val) prop_set('secret', val) end # TACACS+ server port def port prop_get('port') end # TACACS+ server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "use-single-connection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use single connection for all authentication"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"CHAP", "help-string"=>"Select authentication protocol", "enum"=>[{"value"=>"CHAP"}, {"value"=>"PAP"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # Use single connection for all authentication def use_single_connection prop_get('use-single-connection') end # Use single connection for all authentication def use_single_connection=(val) prop_set('use-single-connection', val) end # Select authentication protocol def protocol prop_get('protocol') end # Select authentication protocol def protocol=(val) prop_set('protocol', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tacplus def tacplus if @create_children @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) else Tacplus.new(parent_instance: self) end end class SamlIdp < XML::ConfigClass def has_multiple_values? true end def _section :'saml-idp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "entity-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Unique identifier for SAML IdP"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "complete-handler"=>"check-idp-cert-fields-completer", "help-string"=>"Object name of IdP signing certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry/@name", "##/panorama/certificate/entry/@name"]}, "sso-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Sign On Service URL for the IdP server"}, "sso-bindings"=> {"node-type"=>"element", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "slo-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Logout Service URL for the IdP server"}, "slo-bindings"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "validate-idp-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Certificate revocation check for IdP certificate when checking assertion signature"}, "want-auth-requests-signed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Client auth request signed by cert"}, "max-clock-skew"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"900", "default"=>"60", "help-string"=> "maximum allowed clock skew in second between SAML entities' system time"}, "attribute-name-username-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response"}, "attribute-name-usergroup-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup"}, "attribute-name-admin-role-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role"}, "attribute-name-access-domain-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Unique identifier for SAML IdP def entity_id prop_get('entity-id') end # Unique identifier for SAML IdP def entity_id=(val) prop_set('entity-id', val) end # Object name of IdP signing certificate def certificate prop_get('certificate') end # Object name of IdP signing certificate def certificate=(val) prop_set('certificate', val) end # The Single Sign On Service URL for the IdP server def sso_url prop_get('sso-url') end # The Single Sign On Service URL for the IdP server def sso_url=(val) prop_set('sso-url', val) end def sso_bindings prop_get('sso-bindings') end def sso_bindings=(val) prop_set('sso-bindings', val) end # The Single Logout Service URL for the IdP server def slo_url prop_get('slo-url') end # The Single Logout Service URL for the IdP server def slo_url=(val) prop_set('slo-url', val) end def slo_bindings prop_get('slo-bindings') end def slo_bindings=(val) prop_set('slo-bindings', val) end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate prop_get('validate-idp-certificate') end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate=(val) prop_set('validate-idp-certificate', val) end # Client auth request signed by cert def want_auth_requests_signed prop_get('want-auth-requests-signed') end # Client auth request signed by cert def want_auth_requests_signed=(val) prop_set('want-auth-requests-signed', val) end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew prop_get('max-clock-skew') end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew=(val) prop_set('max-clock-skew', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username_import prop_get('attribute-name-username-import') end # Attribute name for username to be extracted from SAML response def attribute_name_username_import=(val) prop_set('attribute-name-username-import', val) end # usergroup def attribute_name_usergroup_import prop_get('attribute-name-usergroup-import') end # usergroup def attribute_name_usergroup_import=(val) prop_set('attribute-name-usergroup-import', val) end # admin-role def attribute_name_admin_role_import prop_get('attribute-name-admin-role-import') end # admin-role def attribute_name_admin_role_import=(val) prop_set('attribute-name-admin-role-import', val) end # access-domain def attribute_name_access_domain_import prop_get('attribute-name-access-domain-import') end # access-domain def attribute_name_access_domain_import=(val) prop_set('attribute-name-access-domain-import', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SamlIdp def saml_idp if @create_children @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) else SamlIdp.new(parent_instance: self) end end class Netflow < XML::ConfigClass def has_multiple_values? true end def _section :'netflow' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TemplateRefreshRate < ConfigClass def has_multiple_values? false end def _section :'template-refresh-rate' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30"}, "packets"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"20"}} def minutes prop_get('minutes') end def minutes=(val) prop_set('minutes', val) end def packets prop_get('packets') end def packets=(val) prop_set('packets', val) end end # class TemplateRefreshRate def template_refresh_rate @subclasses['template-refresh-rate'] ||= TemplateRefreshRate.new(parent_instance: self, create_children: @create_children) end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Netflow server ip or host name.", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"maxlen"=>"63", "regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$"}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2055", "min"=>"1", "max"=>"65535", "help-string"=>"Netflow server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Netflow server ip or host name. def host prop_get('host') end # Netflow server ip or host name. def host=(val) prop_set('host', val) end # Netflow server port def port prop_get('port') end # Netflow server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "active-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Active timeout in minutes"}, "export-enterprise-fields"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Export PAN-OS Specific Field Types"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Active timeout in minutes def active_timeout prop_get('active-timeout') end # Active timeout in minutes def active_timeout=(val) prop_set('active-timeout', val) end # Export PAN-OS Specific Field Types def export_enterprise_fields prop_get('export-enterprise-fields') end # Export PAN-OS Specific Field Types def export_enterprise_fields=(val) prop_set('export-enterprise-fields', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Netflow def netflow if @create_children @subclasses['netflow'] ||= Netflow.new(parent_instance: self, create_children: @create_children) else Netflow.new(parent_instance: self) end end class Dns < XML::ConfigClass def has_multiple_values? true end def _section :'dns' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "#myentry(devices)/network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "enum"=>[{"value"=>"inherited"}]}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Dns def dns if @create_children @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) else Dns.new(parent_instance: self) end end @props={} end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class AuthenticationProfile < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SingleSignOn < ConfigClass def has_multiple_values? false end def _section :'single-sign-on' end @props={"realm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Kerberos realm to be used for authentication"}, "service-principal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^([:/a-zA-Z0-9._-])+$", "help-string"=>"Kerberos service principal"}, "kerberos-keytab"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"8192", "encrypt"=>"yes", "help-string"=>"Kerberos keytab"}} # Kerberos realm to be used for authentication def realm prop_get('realm') end # Kerberos realm to be used for authentication def realm=(val) prop_set('realm', val) end # Kerberos service principal def service_principal prop_get('service-principal') end # Kerberos service principal def service_principal=(val) prop_set('service-principal', val) end # Kerberos keytab def kerberos_keytab prop_get('kerberos-keytab') end # Kerberos keytab def kerberos_keytab=(val) prop_set('kerberos-keytab', val) end end # class SingleSignOn def single_sign_on @subclasses['single-sign-on'] ||= SingleSignOn.new(parent_instance: self, create_children: @create_children) end class Lockout < ConfigClass def has_multiple_values? false end def _section :'lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"0", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class Lockout def lockout @subclasses['lockout'] ||= Lockout.new(parent_instance: self, create_children: @create_children) end class AllowList < XML::ConfigClass def has_multiple_values? true end def _section :'allow-list' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/panorama/local-user-database/user/entry/@name", "##/panorama/local-user-database/user-group/entry/@name"], "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"1023"}, "enum"=>[{"value"=>"all", "help-string"=>"all user and user groups"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AllowList def allow_list if @create_children @subclasses['allow-list'] ||= AllowList.new(parent_instance: self, create_children: @create_children) else AllowList.new(parent_instance: self) end end class Method < XML::ConfigClass def has_multiple_values? true end def _section :'method' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Radius < ConfigClass def has_multiple_values? false end def _section :'radius' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"RADIUS server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/radius/entry/@name", "##/panorama/server-profile/radius/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from RADIUS"}} # RADIUS server profile object def server_profile prop_get('server-profile') end # RADIUS server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from RADIUS def checkgroup prop_get('checkgroup') end # Retrieve user group from RADIUS def checkgroup=(val) prop_set('checkgroup', val) end end # class Radius def radius @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) end class Ldap < ConfigClass def has_multiple_values? false end def _section :'ldap' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry/@name", "##/panorama/server-profile/ldap/entry/@name"]}, "login-attribute"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "Default is samAccountName for Active Directory, uid for other directory servers"}, "passwd-exp-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "optional"=>"yes", "help-string"=>"Avail for Active Directory, eDir", "default"=>"7"}} # LDAP server profile object def server_profile prop_get('server-profile') end # LDAP server profile object def server_profile=(val) prop_set('server-profile', val) end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute prop_get('login-attribute') end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute=(val) prop_set('login-attribute', val) end # Avail for Active Directory, eDir def passwd_exp_days prop_get('passwd-exp-days') end # Avail for Active Directory, eDir def passwd_exp_days=(val) prop_set('passwd-exp-days', val) end end # class Ldap def ldap @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) end class Kerberos__4 < ConfigClass def has_multiple_values? false end def _section :'kerberos__4' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/kerberos/entry/@name", "##/panorama/server-profile/kerberos/entry/@name"]}, "realm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Realm name to be used for authentication"}} # Kerberos server profile object def server_profile prop_get('server-profile') end # Kerberos server profile object def server_profile=(val) prop_set('server-profile', val) end # Realm name to be used for authentication def realm prop_get('realm') end # Realm name to be used for authentication def realm=(val) prop_set('realm', val) end end # class Kerberos__4 def kerberos__4 @subclasses['kerberos__4'] ||= Kerberos__4.new(parent_instance: self, create_children: @create_children) end class Tacplus < ConfigClass def has_multiple_values? false end def _section :'tacplus' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"TACACS+ server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/tacplus/entry/@name", "##/panorama/server-profile/tacplus/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from TACACS+"}} # TACACS+ server profile object def server_profile prop_get('server-profile') end # TACACS+ server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from TACACS+ def checkgroup prop_get('checkgroup') end # Retrieve user group from TACACS+ def checkgroup=(val) prop_set('checkgroup', val) end end # class Tacplus def tacplus @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) end class SamlIdp < ConfigClass def has_multiple_values? false end def _section :'saml-idp' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"IdP server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/saml-idp/entry/@name", "##/panorama/server-profile/saml-idp/entry/@name"]}, "enable-single-logout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable single logout"}, "request-signing-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "complete-handler"=>"check-cert-fields-completer", "help-string"=>"Signing certificate for SAML requests", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry/@name", "##/panorama/certificate/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Certificate profile for IDP and SP", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "attribute-name-username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response", "uiHint-fieldLabel"=>"Username Attribute"}, "attribute-name-usergroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup", "uiHint-fieldLabel"=>"User Group Attribute"}, "attribute-name-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role", "uiHint-fieldLabel"=>"Admin Role Attribute"}, "attribute-name-access-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain", "uiHint-fieldLabel"=>"Access Domain Attribute"}} # IdP server profile object def server_profile prop_get('server-profile') end # IdP server profile object def server_profile=(val) prop_set('server-profile', val) end # Enable single logout def enable_single_logout prop_get('enable-single-logout') end # Enable single logout def enable_single_logout=(val) prop_set('enable-single-logout', val) end # Signing certificate for SAML requests def request_signing_certificate prop_get('request-signing-certificate') end # Signing certificate for SAML requests def request_signing_certificate=(val) prop_set('request-signing-certificate', val) end # Certificate profile for IDP and SP def certificate_profile prop_get('certificate-profile') end # Certificate profile for IDP and SP def certificate_profile=(val) prop_set('certificate-profile', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username prop_get('attribute-name-username') end # Attribute name for username to be extracted from SAML response def attribute_name_username=(val) prop_set('attribute-name-username', val) end # usergroup def attribute_name_usergroup prop_get('attribute-name-usergroup') end # usergroup def attribute_name_usergroup=(val) prop_set('attribute-name-usergroup', val) end # admin-role def attribute_name_admin_role prop_get('attribute-name-admin-role') end # admin-role def attribute_name_admin_role=(val) prop_set('attribute-name-admin-role', val) end # access-domain def attribute_name_access_domain prop_get('attribute-name-access-domain') end # access-domain def attribute_name_access_domain=(val) prop_set('attribute-name-access-domain', val) end end # class SamlIdp def saml_idp @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Method def method if @create_children @subclasses['method'] ||= Method.new(parent_instance: self, create_children: @create_children) else Method.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Group name"}, "username-modifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"%USERINPUT%", "help-string"=>"Username modifier(Not for SAML) to handle user domain", "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"127"}, "enum"=> [{"value"=>"%USERINPUT%"}, {"value"=>"%USERINPUT%@%USERDOMAIN%"}, {"value"=>"%USERDOMAIN%\\%USERINPUT%"}]}}, "user-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "regex"=> "^[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|\\.]{1}[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|]{0,62}$", "help-string"=>"Domain name(Not for SAML) to be used for authentication"}} # Group name def name prop_get('@name') end # Username modifier(Not for SAML) to handle user domain def username_modifier prop_get('username-modifier') end # Username modifier(Not for SAML) to handle user domain def username_modifier=(val) prop_set('username-modifier', val) end # Domain name(Not for SAML) to be used for authentication def user_domain prop_get('user-domain') end # Domain name(Not for SAML) to be used for authentication def user_domain=(val) prop_set('user-domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationProfile def authentication_profile if @create_children @subclasses['authentication-profile'] ||= AuthenticationProfile.new(parent_instance: self, create_children: @create_children) else AuthenticationProfile.new(parent_instance: self) end end class AuthenticationSequence < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-sequence' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AuthenticationProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name", "##/panorama/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationProfiles def authentication_profiles if @create_children @subclasses['authentication-profiles'] ||= AuthenticationProfiles.new(parent_instance: self, create_children: @create_children) else AuthenticationProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Authentication sequence name"}, "use-domain-find-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Attempt to use domain to determine authentication profile"}} # Authentication sequence name def name prop_get('@name') end # Attempt to use domain to determine authentication profile def use_domain_find_profile prop_get('use-domain-find-profile') end # Attempt to use domain to determine authentication profile def use_domain_find_profile=(val) prop_set('use-domain-find-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationSequence def authentication_sequence if @create_children @subclasses['authentication-sequence'] ||= AuthenticationSequence.new(parent_instance: self, create_children: @create_children) else AuthenticationSequence.new(parent_instance: self) end end class CertificateProfile < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsernameField < XML::ConfigClass def has_multiple_values? true end def _section :'username-field' end @props={"subject"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject", "enum"=>[{"value"=>"common-name"}]}, "subject-alt"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject alternative name", "enum"=>[{"value"=>"email"}, {"value"=>"principal-name"}]}} # get user name from subject def subject prop_get('subject') end # get user name from subject def subject=(val) prop_set('subject', val) end # get user name from subject alternative name def subject_alt prop_get('subject-alt') end # get user name from subject alternative name def subject_alt=(val) prop_set('subject-alt', val) end end # class UsernameField def username_field if @create_children @subclasses['username-field'] ||= UsernameField.new(parent_instance: self, create_children: @create_children) else UsernameField.new(parent_instance: self) end end class CA < XML::ConfigClass def has_multiple_values? true end def _section :'CA' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"CA file for client certificate", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate/entry[ca='yes']/@name", "##/panorama/certificate/entry[ca='yes']/@name"]}, "default-ocsp-url"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"default URL for ocsp verification"}, "ocsp-verify-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "help-string"=>"Certificate to verify signature in OCSP response", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate/entry/@name", "##/panorama/certificate/entry/@name"]}, "template-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"Certificate Template Name / OID for the certificate"}} # CA file for client certificate def name prop_get('@name') end # default URL for ocsp verification def default_ocsp_url prop_get('default-ocsp-url') end # default URL for ocsp verification def default_ocsp_url=(val) prop_set('default-ocsp-url', val) end # Certificate to verify signature in OCSP response def ocsp_verify_cert prop_get('ocsp-verify-cert') end # Certificate to verify signature in OCSP response def ocsp_verify_cert=(val) prop_set('ocsp-verify-cert', val) end # Certificate Template Name / OID for the certificate def template_name prop_get('template-name') end # Certificate Template Name / OID for the certificate def template_name=(val) prop_set('template-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CA def CA if @create_children @subclasses['CA'] ||= CA.new(parent_instance: self, create_children: @create_children) else CA.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Profile name"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "uiHint-fieldLabel"=>"User Domain"}, "use-crl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ocsp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "ocsp-exclude-nonce"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to exclude nonce extension for OCSP requests"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "block-unauthenticated-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block session if the certificate was not issued to the authenticating device"}, "block-expired-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is expired"}} # Profile name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def domain prop_get('domain') end # alphanumeric string [ 0-9a-zA-Z._-] def domain=(val) prop_set('domain', val) end def use_crl prop_get('use-crl') end def use_crl=(val) prop_set('use-crl', val) end def use_ocsp prop_get('use-ocsp') end def use_ocsp=(val) prop_set('use-ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce prop_get('ocsp-exclude-nonce') end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce=(val) prop_set('ocsp-exclude-nonce', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert prop_get('block-unauthenticated-cert') end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert=(val) prop_set('block-unauthenticated-cert', val) end # whether to block a session if cert. status is expired def block_expired_cert prop_get('block-expired-cert') end # whether to block a session if cert. status is expired def block_expired_cert=(val) prop_set('block-expired-cert', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateProfile def certificate_profile if @create_children @subclasses['certificate-profile'] ||= CertificateProfile.new(parent_instance: self, create_children: @create_children) else CertificateProfile.new(parent_instance: self) end end class Certificate < XML::ConfigClass def has_multiple_values? true end def _section :'certificate' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "common-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "algorithm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "ca"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes"}, "not-valid-after"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "not-valid-before"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "expiry-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}, "subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "subject-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "issuer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "issuer-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "private-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"16384", "encrypt"=>"yes", "double-encrypt"=>"yes"}, "status"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"valid", "enum"=>[{"value"=>"valid"}, {"value"=>"revoked"}]}, "revoke-date-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def common_name prop_get('common-name') end def common_name=(val) prop_set('common-name', val) end def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end def ca prop_get('ca') end def ca=(val) prop_set('ca', val) end def not_valid_after prop_get('not-valid-after') end def not_valid_after=(val) prop_set('not-valid-after', val) end def not_valid_before prop_get('not-valid-before') end def not_valid_before=(val) prop_set('not-valid-before', val) end def expiry_epoch prop_get('expiry-epoch') end def expiry_epoch=(val) prop_set('expiry-epoch', val) end def subject prop_get('subject') end def subject=(val) prop_set('subject', val) end def subject_hash prop_get('subject-hash') end def subject_hash=(val) prop_set('subject-hash', val) end def issuer prop_get('issuer') end def issuer=(val) prop_set('issuer', val) end def issuer_hash prop_get('issuer-hash') end def issuer_hash=(val) prop_set('issuer-hash', val) end def private_key prop_get('private-key') end def private_key=(val) prop_set('private-key', val) end def status prop_get('status') end def status=(val) prop_set('status', val) end def revoke_date_epoch prop_get('revoke-date-epoch') end def revoke_date_epoch=(val) prop_set('revoke-date-epoch', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Certificate def certificate if @create_children @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) else Certificate.new(parent_instance: self) end end class SslTlsServiceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-tls-service-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class ProtocolSettings def protocol_settings @subclasses['protocol-settings'] ||= ProtocolSettings.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"127", "regex"=>".*", "help-string"=>"Profile name"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"SSL certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "##/panorama/certificate/entry[not(csr)][private-key]/@name"]}} # Profile name def name prop_get('@name') end # SSL certificate file name def certificate prop_get('certificate') end # SSL certificate file name def certificate=(val) prop_set('certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslTlsServiceProfile def ssl_tls_service_profile if @create_children @subclasses['ssl-tls-service-profile'] ||= SslTlsServiceProfile.new(parent_instance: self, create_children: @create_children) else SslTlsServiceProfile.new(parent_instance: self) end end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/system/match-list/entry/filter", "##/shared/log-settings/system/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/config/match-list/entry/filter", "##/shared/log-settings/config/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/userid/match-list/entry/filter", "##/shared/log-settings/userid/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/iptag/match-list/entry/filter", "##/shared/log-settings/iptag/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/globalprotect/match-list/entry/filter", "##/shared/log-settings/globalprotect/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class Hipmatch__6 < ConfigClass def has_multiple_values? false end def _section :'hipmatch__6' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/hipmatch/match-list/entry/filter", "##/shared/log-settings/hipmatch/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Hipmatch__6 def hipmatch__6 @subclasses['hipmatch__6'] ||= Hipmatch__6.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/wildfire/match-list/entry/filter", "##/shared/log-settings/wildfire/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/threat/match-list/entry/filter", "##/shared/log-settings/threat/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/decryption/match-list/entry/filter", "##/shared/log-settings/decryption/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/threat/match-list/entry/filter", "##/shared/log-settings/threat/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/threat/match-list/entry/filter", "##/shared/log-settings/threat/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/traffic/match-list/entry/filter", "##/shared/log-settings/traffic/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/gtp/match-list/entry/filter", "##/shared/log-settings/gtp/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/sctp/match-list/entry/filter", "##/shared/log-settings/sctp/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/tunnel/match-list/entry/filter", "##/shared/log-settings/tunnel/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/auth/match-list/entry/filter", "##/shared/log-settings/auth/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "multi-types"=> {"ipspec"=>{}, "string"=> {"maxlen"=>"63", "regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "multi-types"=> {"ipspec"=>{}, "string"=> {"maxlen"=>"63", "regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of SMTP gateway to use"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of SYSLOG server to use"}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class LogIngestion < ConfigClass def has_multiple_values? false end def _section :'log-ingestion' end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"23000", "max"=>"23999", "help-string"=>"Port number 23000-23999"}, "transport"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SSL", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "vendor-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"16", "complete-handler"=>"log-ingest-vendor-completer", "help-string"=>"log source ", "autocomplete"=>"yes"}, "version-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"16", "complete-handler"=>"log-ingest-version-completer", "help-string"=> "log type version (select vendor-id first for version options)", "autocomplete"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Port number 23000-23999 def port prop_get('port') end # Port number 23000-23999 def port=(val) prop_set('port', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # log source def vendor_id prop_get('vendor-id') end # log source def vendor_id=(val) prop_set('vendor-id', val) end # log type version (select vendor-id first for version options) def version_id prop_get('version-id') end # log type version (select vendor-id first for version options) def version_id=(val) prop_set('version-id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end @props={} end # class LogIngestion def log_ingestion @subclasses['log-ingestion'] ||= LogIngestion.new(parent_instance: self, create_children: @create_children) end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end class TrustedRootCA < XML::ConfigClass def has_multiple_values? true end def _section :'trusted-root-CA' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Trusted Root CA", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)]/@name", "##/panorama/certificate/entry[not(csr)]/@name"]}} # Trusted Root CA def member prop_get('member') end # Trusted Root CA def member=(val) prop_set('member', val) end end # class TrustedRootCA def trusted_root_CA if @create_children @subclasses['trusted-root-CA'] ||= TrustedRootCA.new(parent_instance: self, create_children: @create_children) else TrustedRootCA.new(parent_instance: self) end end @props={} end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end class Scep < XML::ConfigClass def has_multiple_values? true end def _section :'scep' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScepChallenge < XML::ConfigClass def has_multiple_values? true end def _section :'scep-challenge' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"otp-server-url__1"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"non-fips-mode", "regex"=>"^(https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"HTTPS URL to get the One-Time-Password", "uiHint-fieldLabel"=>"Server URL"}, "otp-server-url__2"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"fips-mode", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"URL to get the One-Time-Password", "uiHint-fieldLabel"=>"Server URL"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Username to authenticate to the SCEP server for procuring OTP"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Password to authenticate to the SCEP server for procuring OTP"}} # HTTPS URL to get the One-Time-Password def otp_server_url__1 prop_get('otp-server-url__1') end # HTTPS URL to get the One-Time-Password def otp_server_url__1=(val) prop_set('otp-server-url__1', val) end # URL to get the One-Time-Password def otp_server_url__2 prop_get('otp-server-url__2') end # URL to get the One-Time-Password def otp_server_url__2=(val) prop_set('otp-server-url__2', val) end # Username to authenticate to the SCEP server for procuring OTP def username prop_get('username') end # Username to authenticate to the SCEP server for procuring OTP def username=(val) prop_set('username', val) end # Password to authenticate to the SCEP server for procuring OTP def password prop_get('password') end # Password to authenticate to the SCEP server for procuring OTP def password=(val) prop_set('password', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"fixed"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "regex"=>"[^']*", "helpstring"=>"Challenge to use for SCEP server on mobile clients"}} def fixed prop_get('fixed') end def fixed=(val) prop_set('fixed', val) end end # class ScepChallenge def scep_challenge if @create_children @subclasses['scep-challenge'] ||= ScepChallenge.new(parent_instance: self, create_children: @create_children) else ScepChallenge.new(parent_instance: self) end end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Rsa < ConfigClass def has_multiple_values? false end def _section :'rsa' end @props={"rsa-nbits"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-nbits-complete-handler", "help-string"=>"Length of the key", "autocomplete"=>"yes"}} # Length of the key def rsa_nbits prop_get('rsa-nbits') end # Length of the key def rsa_nbits=(val) prop_set('rsa-nbits', val) end end # class Rsa def rsa @subclasses['rsa'] ||= Rsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end @props={"rfc822name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"rfc822Name"}, "dnsname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"dNSName"}, "uniform-resource-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"uniformResourceIdentifier"}} # rfc822Name def rfc822name prop_get('rfc822name') end # rfc822Name def rfc822name=(val) prop_set('rfc822name', val) end # dNSName def dnsname prop_get('dnsname') end # dNSName def dnsname=(val) prop_set('dnsname', val) end # uniformResourceIdentifier def uniform_resource_identifier prop_get('uniform-resource-identifier') end # uniformResourceIdentifier def uniform_resource_identifier=(val) prop_set('uniform-resource-identifier', val) end end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "scep-url__4"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"non-fips-mode", "regex"=>"^(https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"The base URL for the SCEP server"}, "scep-url__5"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"fips-mode", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"The base URL for the SCEP server"}, "scep-ca-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"SCEP Server CA Certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "##/panorama/certificate/entry[not(csr)]/@name"]}, "scep-client-cert"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "optional"=>"yes", "help-string"=> "Client Certificate to use when connecting to SCEP Server over SSL", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "##/panorama/certificate/entry[not(csr)][private-key]/@name"]}, "ca-identity-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Name of the SCEP server CA Identity"}, "subject"=> {"node-type"=>"element", "regex"=>"(.*)CN=(.*?)(.*)", "type"=>"string", "default"=>"CN=$USERNAME", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"Representation of a X.500 name"}, "digest"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-digest-complete-handler", "help-string"=>"Digest Algorithm for CSR", "autocomplete"=>"yes"}, "fingerprint"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Hex String to use as a fingerprint"}, "use-as-digital-signature"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use as digital signature", "uiHint-fieldLabel"=>"Use as digital signature"}, "use-for-key-encipherment"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use for key encipherment", "uiHint-fieldLabel"=>"Use for key encipherment"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The base URL for the SCEP server def scep_url__4 prop_get('scep-url__4') end # The base URL for the SCEP server def scep_url__4=(val) prop_set('scep-url__4', val) end # The base URL for the SCEP server def scep_url__5 prop_get('scep-url__5') end # The base URL for the SCEP server def scep_url__5=(val) prop_set('scep-url__5', val) end # SCEP Server CA Certificate def scep_ca_cert prop_get('scep-ca-cert') end # SCEP Server CA Certificate def scep_ca_cert=(val) prop_set('scep-ca-cert', val) end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert prop_get('scep-client-cert') end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert=(val) prop_set('scep-client-cert', val) end # Name of the SCEP server CA Identity def ca_identity_name prop_get('ca-identity-name') end # Name of the SCEP server CA Identity def ca_identity_name=(val) prop_set('ca-identity-name', val) end # Representation of a X.500 name def subject prop_get('subject') end # Representation of a X.500 name def subject=(val) prop_set('subject', val) end # Digest Algorithm for CSR def digest prop_get('digest') end # Digest Algorithm for CSR def digest=(val) prop_set('digest', val) end # Hex String to use as a fingerprint def fingerprint prop_get('fingerprint') end # Hex String to use as a fingerprint def fingerprint=(val) prop_set('fingerprint', val) end # Use as digital signature def use_as_digital_signature prop_get('use-as-digital-signature') end # Use as digital signature def use_as_digital_signature=(val) prop_set('use-as-digital-signature', val) end # Use for key encipherment def use_for_key_encipherment prop_get('use-for-key-encipherment') end # Use for key encipherment def use_for_key_encipherment=(val) prop_set('use-for-key-encipherment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scep def scep if @create_children @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) else Scep.new(parent_instance: self) end end class UserIdSslAuth < ConfigClass def has_multiple_values? false end def _section :'user-id-ssl-auth' end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class UserIdSslAuth def user_id_ssl_auth @subclasses['user-id-ssl-auth'] ||= UserIdSslAuth.new(parent_instance: self, create_children: @create_children) end class RedistributionAgent < XML::ConfigClass def has_multiple_values? true end def _section :'redistribution-agent' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for redistribution agent.", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"agent IP address"}, "string"=> {"regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"redistribution agent listening port"}, "collectorname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"collector name on peer panos"}, "secret"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"collector pre-shared key on peer panos"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "ip-user-mappings"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "ip-tags"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "user-tags"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "hip"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "quarantine-list"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or hostname for redistribution agent. def host prop_get('host') end # IP address or hostname for redistribution agent. def host=(val) prop_set('host', val) end # redistribution agent listening port def port prop_get('port') end # redistribution agent listening port def port=(val) prop_set('port', val) end # collector name on peer panos def collectorname prop_get('collectorname') end # collector name on peer panos def collectorname=(val) prop_set('collectorname', val) end # collector pre-shared key on peer panos def secret prop_get('secret') end # collector pre-shared key on peer panos def secret=(val) prop_set('secret', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end def ip_user_mappings prop_get('ip-user-mappings') end def ip_user_mappings=(val) prop_set('ip-user-mappings', val) end def ip_tags prop_get('ip-tags') end def ip_tags=(val) prop_set('ip-tags', val) end def user_tags prop_get('user-tags') end def user_tags=(val) prop_set('user-tags', val) end def hip prop_get('hip') end def hip=(val) prop_set('hip', val) end def quarantine_list prop_get('quarantine-list') end def quarantine_list=(val) prop_set('quarantine-list', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistributionAgent def redistribution_agent if @create_children @subclasses['redistribution-agent'] ||= RedistributionAgent.new(parent_instance: self, create_children: @create_children) else RedistributionAgent.new(parent_instance: self) end end class IpuserIncludeExcludeList < ConfigClass def has_multiple_values? false end def _section :'ipuser-include-exclude-list' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"ipspec", "subnet-only"=>"yes", "help-string"=>"network address/prefix to include or exclude"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IpuserIncludeExcludeList def ipuser_include_exclude_list @subclasses['ipuser-include-exclude-list'] ||= IpuserIncludeExcludeList.new(parent_instance: self, create_children: @create_children) end class IptagIncludeExcludeList < ConfigClass def has_multiple_values? false end def _section :'iptag-include-exclude-list' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"ipspec", "subnet-only"=>"yes", "help-string"=>"network address/prefix to include or exclude"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IptagIncludeExcludeList def iptag_include_exclude_list @subclasses['iptag-include-exclude-list'] ||= IptagIncludeExcludeList.new(parent_instance: self, create_children: @create_children) end class RedistributionCollector < ConfigClass def has_multiple_values? false end def _section :'redistribution-collector' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end @props={"collectorname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"collector name for data re-distribution"}, "secret"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"pre-shared key for data re-distribution"}} # collector name for data re-distribution def collectorname prop_get('collectorname') end # collector name for data re-distribution def collectorname=(val) prop_set('collectorname', val) end # pre-shared key for data re-distribution def secret prop_get('secret') end # pre-shared key for data re-distribution def secret=(val) prop_set('secret', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end @props={} end # class RedistributionCollector def redistribution_collector @subclasses['redistribution-collector'] ||= RedistributionCollector.new(parent_instance: self, create_children: @create_children) end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Shared < ConfigClass def has_multiple_values? false end def _section :'shared' end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class Profiles < XML::ConfigClass def has_multiple_values? true end def _section :'profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/config/shared/log-settings/snmptrap/entry[version]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/snmptrap/entry[version]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/config/shared/log-settings/email/entry[server]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/email/entry[server]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/config/shared/log-settings/syslog/entry[server]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/syslog/entry[server]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/config/shared/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#mytemplates/#dg-hier/config/shared/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/config/shared/log-settings/http/entry[tag-registration='yes']/@name", "#mytemplates/#dg-hier/config/shared/log-settings/http/entry[tag-registration='yes']/@name", "#mytemplates/#dg-hier/config/shared/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "action-desc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1023"}, "log-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"traffic", "help-string"=>"Pick log type", "enum"=> [{"value"=>"traffic"}, {"value"=>"threat"}, {"value"=>"wildfire"}, {"value"=>"url"}, {"value"=>"data"}, {"value"=>"gtp"}, {"value"=>"sctp"}, {"value"=>"tunnel"}, {"value"=>"auth"}, {"value"=>"decryption"}]}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/profiles/entry/match-list/entry/filter", "##/shared/log-settings/profiles/entry/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action_desc prop_get('action-desc') end def action_desc=(val) prop_set('action-desc', val) end # Pick log type def log_type prop_get('log-type') end # Pick log type def log_type=(val) prop_set('log-type', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1023"}, "enhanced-application-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enabling enhanced-application-logging"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # Enabling enhanced-application-logging def enhanced_application_logging prop_get('enhanced-application-logging') end # Enabling enhanced-application-logging def enhanced_application_logging=(val) prop_set('enhanced-application-logging', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Profiles def profiles if @create_children @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) else Profiles.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ContentPreview < ConfigClass def has_multiple_values? false end def _section :'content-preview' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Default < XML::ConfigClass def has_multiple_values? true end def _section :'default' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic)"}} # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member prop_get('member') end # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member=(val) prop_set('member', val) end end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class IdentByIcmpType < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmpType def ident_by_icmp_type @subclasses['ident-by-icmp-type'] ||= IdentByIcmpType.new(parent_instance: self, create_children: @create_children) end class IdentByIcmp6Type < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp6-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmp6Type def ident_by_icmp6_type @subclasses['ident-by-icmp6-type'] ||= IdentByIcmp6Type.new(parent_instance: self, create_children: @create_children) end @props={"ident-by-ip-protocol"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def ident_by_ip_protocol prop_get('ident-by-ip-protocol') end def ident_by_ip_protocol=(val) prop_set('ident-by-ip-protocol', val) end end # class Default def default if @create_children @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) else Default.new(parent_instance: self) end end class UseApplications < XML::ConfigClass def has_multiple_values? true end def _section :'use-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UseApplications def use_applications if @create_children @subclasses['use-applications'] ||= UseApplications.new(parent_instance: self, create_children: @create_children) else UseApplications.new(parent_instance: self) end end class ImplicitUseApplications < XML::ConfigClass def has_multiple_values? true end def _section :'implicit-use-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ImplicitUseApplications def implicit_use_applications if @create_children @subclasses['implicit-use-applications'] ||= ImplicitUseApplications.new(parent_instance: self, create_children: @create_children) else ImplicitUseApplications.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "category"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}, "subcategory"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry[@name='$category']/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry[@name='$category']/subcategory/entry/@name"]}, "technology"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "udp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-half-closed-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout for half-close session in seconds"}, "tcp-time-wait-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "help-string"=>"timeout for session in time_wait state in seconds"}, "risk"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}, "evasive-behavior"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "consume-big-bandwidth"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "used-by-malware"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "able-to-transfer-file"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "has-known-vulnerability"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-other-application"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-applications"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "pervasive-use"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "file-type-ident"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "virus-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "data-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "no-appid-caching"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "alg-disable-capability"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "parent-app"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name|#config/predefined/application-container/entry/@name"]}, "cachable"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "can-disable"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "preview"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "is-saas"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def subcategory prop_get('subcategory') end def subcategory=(val) prop_set('subcategory', val) end def technology prop_get('technology') end def technology=(val) prop_set('technology', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # timeout in seconds def timeout prop_get('timeout') end # timeout in seconds def timeout=(val) prop_set('timeout', val) end # timeout in seconds def tcp_timeout prop_get('tcp-timeout') end # timeout in seconds def tcp_timeout=(val) prop_set('tcp-timeout', val) end # timeout in seconds def udp_timeout prop_get('udp-timeout') end # timeout in seconds def udp_timeout=(val) prop_set('udp-timeout', val) end # timeout for half-close session in seconds def tcp_half_closed_timeout prop_get('tcp-half-closed-timeout') end # timeout for half-close session in seconds def tcp_half_closed_timeout=(val) prop_set('tcp-half-closed-timeout', val) end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout prop_get('tcp-time-wait-timeout') end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout=(val) prop_set('tcp-time-wait-timeout', val) end def risk prop_get('risk') end def risk=(val) prop_set('risk', val) end def evasive_behavior prop_get('evasive-behavior') end def evasive_behavior=(val) prop_set('evasive-behavior', val) end def consume_big_bandwidth prop_get('consume-big-bandwidth') end def consume_big_bandwidth=(val) prop_set('consume-big-bandwidth', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def able_to_transfer_file prop_get('able-to-transfer-file') end def able_to_transfer_file=(val) prop_set('able-to-transfer-file', val) end def has_known_vulnerability prop_get('has-known-vulnerability') end def has_known_vulnerability=(val) prop_set('has-known-vulnerability', val) end def tunnel_other_application prop_get('tunnel-other-application') end def tunnel_other_application=(val) prop_set('tunnel-other-application', val) end def tunnel_applications prop_get('tunnel-applications') end def tunnel_applications=(val) prop_set('tunnel-applications', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive_use prop_get('pervasive-use') end def pervasive_use=(val) prop_set('pervasive-use', val) end def file_type_ident prop_get('file-type-ident') end def file_type_ident=(val) prop_set('file-type-ident', val) end def virus_ident prop_get('virus-ident') end def virus_ident=(val) prop_set('virus-ident', val) end def data_ident prop_get('data-ident') end def data_ident=(val) prop_set('data-ident', val) end def no_appid_caching prop_get('no-appid-caching') end def no_appid_caching=(val) prop_set('no-appid-caching', val) end def alg_disable_capability prop_get('alg-disable-capability') end def alg_disable_capability=(val) prop_set('alg-disable-capability', val) end def parent_app prop_get('parent-app') end def parent_app=(val) prop_set('parent-app', val) end def cachable prop_get('cachable') end def cachable=(val) prop_set('cachable', val) end def can_disable prop_get('can-disable') end def can_disable=(val) prop_set('can-disable', val) end def preview prop_get('preview') end def preview=(val) prop_set('preview', val) end def is_saas prop_get('is-saas') end def is_saas=(val) prop_set('is-saas', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ApplicationType < XML::ConfigClass def has_multiple_values? true end def _section :'application-type' end class Category < ConfigClass def has_multiple_values? false end def _section :'category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "@id"=>{"node-type"=>"attr-req", "type"=>"rangedint", "max"=>"128"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('@id') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Category def category @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) end class Technology < ConfigClass def has_multiple_values? false end def _section :'technology' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "@id"=>{"node-type"=>"attr-req", "type"=>"rangedint", "max"=>"128"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('@id') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Technology def technology @subclasses['technology'] ||= Technology.new(parent_instance: self, create_children: @create_children) end @props={} end # class ApplicationType def application_type if @create_children @subclasses['application-type'] ||= ApplicationType.new(parent_instance: self, create_children: @create_children) else ApplicationType.new(parent_instance: self) end end @props={} end # class ContentPreview def content_preview @subclasses['content-preview'] ||= ContentPreview.new(parent_instance: self, create_children: @create_children) end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "ip-netmask"=>{"node-type"=>"element", "type"=>"ipspec"}, "ip-range"=>{"node-type"=>"element", "type"=>"iprangespec"}, "ip-wildcard"=>{"node-type"=>"element", "type"=>"ipdiscontmask"}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^[a-zA-Z0-9_]([a-zA-Z0-9._-])+[a-zA-Z0-9]$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def ip_wildcard prop_get('ip-wildcard') end def ip_wildcard=(val) prop_set('ip-wildcard', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class AddressGroup < XML::ConfigClass def has_multiple_values? true end def _section :'address-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Static < XML::ConfigClass def has_multiple_values? true end def _section :'static' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Static def static if @create_children @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) else Static.new(parent_instance: self) end end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"filter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2047", "help-string"=>"tag-based filter"}} # tag-based filter def filter prop_get('filter') end # tag-based filter def filter=(val) prop_set('filter', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressGroup def address_group if @create_children @subclasses['address-group'] ||= AddressGroup.new(parent_instance: self, create_children: @create_children) else AddressGroup.new(parent_instance: self) end end class DynamicUserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dynamic-user-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2047", "help-string"=>"tag-based filter"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # tag-based filter def filter prop_get('filter') end # tag-based filter def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DynamicUserGroup def dynamic_user_group if @create_children @subclasses['dynamic-user-group'] ||= DynamicUserGroup.new(parent_instance: self, create_children: @create_children) else DynamicUserGroup.new(parent_instance: self) end end class Threats < ConfigClass def has_multiple_values? false end def _section :'threats' end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AffectedHost < ConfigClass def has_multiple_values? false end def _section :'affected-host' end @props={"client"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "server"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def client prop_get('client') end def client=(val) prop_set('client', val) end def server prop_get('server') end def server=(val) prop_set('server', val) end end # class AffectedHost def affected_host @subclasses['affected-host'] ||= AffectedHost.new(parent_instance: self, create_children: @create_children) end class DefaultAction < XML::ConfigClass def has_multiple_values? true end def _section :'default-action' end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultAction def default_action if @create_children @subclasses['default-action'] ||= DefaultAction.new(parent_instance: self, create_children: @create_children) else DefaultAction.new(parent_instance: self) end end class Cve < XML::ConfigClass def has_multiple_values? true end def _section :'cve' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"CVE #, CVE-1999-0001 etc"}} # CVE #, CVE-1999-0001 etc def member prop_get('member') end # CVE #, CVE-1999-0001 etc def member=(val) prop_set('member', val) end end # class Cve def cve if @create_children @subclasses['cve'] ||= Cve.new(parent_instance: self, create_children: @create_children) else Cve.new(parent_instance: self) end end class Bugtraq < XML::ConfigClass def has_multiple_values? true end def _section :'bugtraq' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"bugtraq id"}} # bugtraq id def member prop_get('member') end # bugtraq id def member=(val) prop_set('member', val) end end # class Bugtraq def bugtraq if @create_children @subclasses['bugtraq'] ||= Bugtraq.new(parent_instance: self, create_children: @create_children) else Bugtraq.new(parent_instance: self) end end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"Vendor's refer id, for example, MS03-026"}} # Vendor's refer id, for example, MS03-026 def member prop_get('member') end # Vendor's refer id, for example, MS03-026 def member=(val) prop_set('member', val) end end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end class Reference < XML::ConfigClass def has_multiple_values? true end def _section :'reference' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"256", "help-string"=>"URL"}} # URL def member prop_get('member') end # URL def member=(val) prop_set('member', val) end end # class Reference def reference if @create_children @subclasses['reference'] ||= Reference.new(parent_instance: self, create_children: @create_children) else Reference.new(parent_instance: self) end end class Signature < XML::ConfigClass def has_multiple_values? true end def _section :'signature' end class Standard < XML::ConfigClass def has_multiple_values? true end def _section :'standard' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Operator < XML::ConfigClass def has_multiple_values? true end def _section :'operator' end class LessThan < ConfigClass def has_multiple_values? false end def _section :'less-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class LessThan def less_than @subclasses['less-than'] ||= LessThan.new(parent_instance: self, create_children: @create_children) end class EqualTo < ConfigClass def has_multiple_values? false end def _section :'equal-to' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes", "default"=>"no"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end end # class EqualTo def equal_to @subclasses['equal-to'] ||= EqualTo.new(parent_instance: self, create_children: @create_children) end class GreaterThan < ConfigClass def has_multiple_values? false end def _section :'greater-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class GreaterThan def greater_than @subclasses['greater-than'] ||= GreaterThan.new(parent_instance: self, create_children: @create_children) end class PatternMatch < ConfigClass def has_multiple_values? false end def _section :'pattern-match' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/pattern/entry/@name"]}, "pattern"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def pattern prop_get('pattern') end def pattern=(val) prop_set('pattern', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end end # class PatternMatch def pattern_match @subclasses['pattern-match'] ||= PatternMatch.new(parent_instance: self, create_children: @create_children) end @props={} end # class Operator def operator if @create_children @subclasses['operator'] ||= Operator.new(parent_instance: self, create_children: @create_children) else Operator.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "scope"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"protocol-data-unit", "enum"=> [{"value"=>"protocol-data-unit", "help-string"=>"transaction"}, {"value"=>"session"}]}, "order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def scope prop_get('scope') end def scope=(val) prop_set('scope', val) end def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Standard def standard if @create_children @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) else Standard.new(parent_instance: self) end end class Combination < ConfigClass def has_multiple_values? false end def _section :'combination' end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"source-and-destination", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id", "autocomplete"=>"yes", "memberof"=> ["##/predefined/threats/vulnerability/entry[not (time-attribute)]/@name", "##/predefined/threats/phone-home/entry[not (time-attribute)]/@name", "#config/shared/threats/vulnerability/entry[(signature/standard)]/@name", "#config/shared/threats/spyware/entry[(signature/standard)]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # threat id def threat_id prop_get('threat-id') end # threat id def threat_id=(val) prop_set('threat-id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Combination def combination @subclasses['combination'] ||= Combination.new(parent_instance: self, create_children: @create_children) end @props={} end # class Signature def signature if @create_children @subclasses['signature'] ||= Signature.new(parent_instance: self, create_children: @create_children) else Signature.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"41000", "max"=>"6900000", "help-string"=>"threat id range <41000-45000> and <6800001-6900000>"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "threatname"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "severity"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}, "direction"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/direction/entry/@name"]}} # threat id range <41000-45000> and <6800001-6900000> def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # alphanumeric string [ 0-9a-zA-Z._-] def threatname prop_get('threatname') end # alphanumeric string [ 0-9a-zA-Z._-] def threatname=(val) prop_set('threatname', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DefaultAction < XML::ConfigClass def has_multiple_values? true end def _section :'default-action' end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultAction def default_action if @create_children @subclasses['default-action'] ||= DefaultAction.new(parent_instance: self, create_children: @create_children) else DefaultAction.new(parent_instance: self) end end class Cve < XML::ConfigClass def has_multiple_values? true end def _section :'cve' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"CVE #, CVE-1999-0001 etc"}} # CVE #, CVE-1999-0001 etc def member prop_get('member') end # CVE #, CVE-1999-0001 etc def member=(val) prop_set('member', val) end end # class Cve def cve if @create_children @subclasses['cve'] ||= Cve.new(parent_instance: self, create_children: @create_children) else Cve.new(parent_instance: self) end end class Bugtraq < XML::ConfigClass def has_multiple_values? true end def _section :'bugtraq' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"bugtraq id"}} # bugtraq id def member prop_get('member') end # bugtraq id def member=(val) prop_set('member', val) end end # class Bugtraq def bugtraq if @create_children @subclasses['bugtraq'] ||= Bugtraq.new(parent_instance: self, create_children: @create_children) else Bugtraq.new(parent_instance: self) end end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"Vendor's refer id, for example, MS03-026"}} # Vendor's refer id, for example, MS03-026 def member prop_get('member') end # Vendor's refer id, for example, MS03-026 def member=(val) prop_set('member', val) end end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end class Reference < XML::ConfigClass def has_multiple_values? true end def _section :'reference' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"URL"}} # URL def member prop_get('member') end # URL def member=(val) prop_set('member', val) end end # class Reference def reference if @create_children @subclasses['reference'] ||= Reference.new(parent_instance: self, create_children: @create_children) else Reference.new(parent_instance: self) end end class Signature < XML::ConfigClass def has_multiple_values? true end def _section :'signature' end class Standard < XML::ConfigClass def has_multiple_values? true end def _section :'standard' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Operator < XML::ConfigClass def has_multiple_values? true end def _section :'operator' end class LessThan < ConfigClass def has_multiple_values? false end def _section :'less-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}} def value prop_get('value') end def value=(val) prop_set('value', val) end def context prop_get('context') end def context=(val) prop_set('context', val) end end # class LessThan def less_than @subclasses['less-than'] ||= LessThan.new(parent_instance: self, create_children: @create_children) end class EqualTo < ConfigClass def has_multiple_values? false end def _section :'equal-to' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes", "default"=>"no"}, "context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}} def value prop_get('value') end def value=(val) prop_set('value', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end def context prop_get('context') end def context=(val) prop_set('context', val) end end # class EqualTo def equal_to @subclasses['equal-to'] ||= EqualTo.new(parent_instance: self, create_children: @create_children) end class GreaterThan < ConfigClass def has_multiple_values? false end def _section :'greater-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}} def value prop_get('value') end def value=(val) prop_set('value', val) end def context prop_get('context') end def context=(val) prop_set('context', val) end end # class GreaterThan def greater_than @subclasses['greater-than'] ||= GreaterThan.new(parent_instance: self, create_children: @create_children) end class PatternMatch < ConfigClass def has_multiple_values? false end def _section :'pattern-match' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/pattern/entry/@name"]}, "pattern"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def pattern prop_get('pattern') end def pattern=(val) prop_set('pattern', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end end # class PatternMatch def pattern_match @subclasses['pattern-match'] ||= PatternMatch.new(parent_instance: self, create_children: @create_children) end @props={} end # class Operator def operator if @create_children @subclasses['operator'] ||= Operator.new(parent_instance: self, create_children: @create_children) else Operator.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "scope"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"protocol-data-unit", "enum"=> [{"value"=>"protocol-data-unit", "help-string"=>"transaction"}, {"value"=>"session"}]}, "order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def scope prop_get('scope') end def scope=(val) prop_set('scope', val) end def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Standard def standard if @create_children @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) else Standard.new(parent_instance: self) end end class Combination < ConfigClass def has_multiple_values? false end def _section :'combination' end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"source-and-destination", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id", "autocomplete"=>"yes", "memberof"=> ["##/predefined/threats/vulnerability/entry[not (time-attribute)]/@name", "##/predefined/threats/phone-home/entry[not (time-attribute)]/@name", "#config/shared/threats/vulnerability/entry[(signature/standard)]/@name", "#config/shared/threats/spyware/entry[(signature/standard)]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # threat id def threat_id prop_get('threat-id') end # threat id def threat_id=(val) prop_set('threat-id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Combination def combination @subclasses['combination'] ||= Combination.new(parent_instance: self, create_children: @create_children) end @props={} end # class Signature def signature if @create_children @subclasses['signature'] ||= Signature.new(parent_instance: self, create_children: @create_children) else Signature.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"15000", "max"=>"7000000", "help-string"=>"threat id range <15000-18000> and <6900001-7000000>"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "threatname"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "severity"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}, "direction"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/direction/entry/@name"]}} # threat id range <15000-18000> and <6900001-7000000> def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # alphanumeric string [ 0-9a-zA-Z._-] def threatname prop_get('threatname') end # alphanumeric string [ 0-9a-zA-Z._-] def threatname=(val) prop_set('threatname', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end @props={} end # class Threats def threats @subclasses['threats'] ||= Threats.new(parent_instance: self, create_children: @create_children) end class DeviceObject < XML::ConfigClass def has_multiple_values? true end def _section :'device-object' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='category']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='category']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Profile < XML::ConfigClass def has_multiple_values? true end def _section :'profile' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='profile']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='profile']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Profile def profile if @create_children @subclasses['profile'] ||= Profile.new(parent_instance: self, create_children: @create_children) else Profile.new(parent_instance: self) end end class Osfamily < XML::ConfigClass def has_multiple_values? true end def _section :'osfamily' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='osfamily']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='osfamily']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Osfamily def osfamily if @create_children @subclasses['osfamily'] ||= Osfamily.new(parent_instance: self, create_children: @create_children) else Osfamily.new(parent_instance: self) end end class Os < XML::ConfigClass def has_multiple_values? true end def _section :'os' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='os']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='os']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Os def os if @create_children @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) else Os.new(parent_instance: self) end end class Model < XML::ConfigClass def has_multiple_values? true end def _section :'model' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='model']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='model']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Model def model if @create_children @subclasses['model'] ||= Model.new(parent_instance: self, create_children: @create_children) else Model.new(parent_instance: self) end end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='vendor']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='vendor']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DeviceObject def device_object if @create_children @subclasses['device-object'] ||= DeviceObject.new(parent_instance: self, create_children: @create_children) else DeviceObject.new(parent_instance: self) end end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HipObjects < XML::ConfigClass def has_multiple_values? true end def _section :'hip-objects' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class HostInfo < ConfigClass def has_multiple_values? false end def _section :'host-info' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class Domain < ConfigClass def has_multiple_values? false end def _section :'domain' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Domain def domain @subclasses['domain'] ||= Domain.new(parent_instance: self, create_children: @create_children) end class Os < ConfigClass def has_multiple_values? false end def _section :'os' end class Contains < ConfigClass def has_multiple_values? false end def _section :'contains' end @props={"Microsoft"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Microsoft vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Microsoft']/os/member"]}, "Apple"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Apple vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Apple']/os/member"]}, "Google"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Google vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Google']/os/member"]}, "Linux"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Linux vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Linux']/os/member"]}, "Other"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "help-string"=>"Other vendor"}} # Microsoft vendor def Microsoft prop_get('Microsoft') end # Microsoft vendor def Microsoft=(val) prop_set('Microsoft', val) end # Apple vendor def Apple prop_get('Apple') end # Apple vendor def Apple=(val) prop_set('Apple', val) end # Google vendor def Google prop_get('Google') end # Google vendor def Google=(val) prop_set('Google', val) end # Linux vendor def Linux prop_get('Linux') end # Linux vendor def Linux=(val) prop_set('Linux', val) end # Other vendor def Other prop_get('Other') end # Other vendor def Other=(val) prop_set('Other', val) end end # class Contains def contains @subclasses['contains'] ||= Contains.new(parent_instance: self, create_children: @create_children) end @props={} end # class Os def os @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) end class ClientVersion < ConfigClass def has_multiple_values? false end def _section :'client-version' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class ClientVersion def client_version @subclasses['client-version'] ||= ClientVersion.new(parent_instance: self, create_children: @create_children) end class HostName < ConfigClass def has_multiple_values? false end def _section :'host-name' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class HostName def host_name @subclasses['host-name'] ||= HostName.new(parent_instance: self, create_children: @create_children) end class HostId < ConfigClass def has_multiple_values? false end def _section :'host-id' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class HostId def host_id @subclasses['host-id'] ||= HostId.new(parent_instance: self, create_children: @create_children) end class SerialNumber < ConfigClass def has_multiple_values? false end def _section :'serial-number' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class SerialNumber def serial_number @subclasses['serial-number'] ||= SerialNumber.new(parent_instance: self, create_children: @create_children) end @props={"managed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device is managed", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}} # If device is managed def managed prop_get('managed') end # If device is managed def managed=(val) prop_set('managed', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class HostInfo def host_info @subclasses['host-info'] ||= HostInfo.new(parent_instance: self, create_children: @create_children) end class NetworkInfo < ConfigClass def has_multiple_values? false end def _section :'network-info' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class Network < XML::ConfigClass def has_multiple_values? true end def _section :'network' end class Is < XML::ConfigClass def has_multiple_values? true end def _section :'is' end class Wifi < ConfigClass def has_multiple_values? false end def _section :'wifi' end @props={"ssid"=> {"node-type"=>"element", "type"=>"string", "uiHint-fieldLabel"=>"SSID", "maxlen"=>"1023", "regex"=>".*", "optional"=>"yes", "help-string"=>"SSID"}} # SSID def ssid prop_get('ssid') end # SSID def ssid=(val) prop_set('ssid', val) end end # class Wifi def wifi @subclasses['wifi'] ||= Wifi.new(parent_instance: self, create_children: @create_children) end class Mobile < ConfigClass def has_multiple_values? false end def _section :'mobile' end @props={"carrier"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "optional"=>"yes"}} def carrier prop_get('carrier') end def carrier=(val) prop_set('carrier', val) end end # class Mobile def mobile @subclasses['mobile'] ||= Mobile.new(parent_instance: self, create_children: @create_children) end class Unknown < ConfigClass def has_multiple_values? false end def _section :'unknown' end @props={} end # class Unknown def unknown @subclasses['unknown'] ||= Unknown.new(parent_instance: self, create_children: @create_children) end @props={} end # class Is def is if @create_children @subclasses['is'] ||= Is.new(parent_instance: self, create_children: @create_children) else Is.new(parent_instance: self) end end class IsNot < XML::ConfigClass def has_multiple_values? true end def _section :'is-not' end class Wifi < ConfigClass def has_multiple_values? false end def _section :'wifi' end @props={"ssid"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "uiHint-fieldLabel"=>"SSID", "regex"=>".*", "optional"=>"yes", "help-string"=>"SSID"}} # SSID def ssid prop_get('ssid') end # SSID def ssid=(val) prop_set('ssid', val) end end # class Wifi def wifi @subclasses['wifi'] ||= Wifi.new(parent_instance: self, create_children: @create_children) end class Mobile < ConfigClass def has_multiple_values? false end def _section :'mobile' end @props={"carrier"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "optional"=>"yes"}} def carrier prop_get('carrier') end def carrier=(val) prop_set('carrier', val) end end # class Mobile def mobile @subclasses['mobile'] ||= Mobile.new(parent_instance: self, create_children: @create_children) end class Ethernet < ConfigClass def has_multiple_values? false end def _section :'ethernet' end @props={} end # class Ethernet def ethernet @subclasses['ethernet'] ||= Ethernet.new(parent_instance: self, create_children: @create_children) end class Unknown < ConfigClass def has_multiple_values? false end def _section :'unknown' end @props={} end # class Unknown def unknown @subclasses['unknown'] ||= Unknown.new(parent_instance: self, create_children: @create_children) end @props={} end # class IsNot def is_not if @create_children @subclasses['is-not'] ||= IsNot.new(parent_instance: self, create_children: @create_children) else IsNot.new(parent_instance: self) end end @props={} end # class Network def network if @create_children @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) else Network.new(parent_instance: self) end end @props={} end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class NetworkInfo def network_info @subclasses['network-info'] ||= NetworkInfo.new(parent_instance: self, create_children: @create_children) end class PatchManagement < ConfigClass def has_multiple_values? false end def _section :'patch-management' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class MissingPatches < ConfigClass def has_multiple_values? false end def _section :'missing-patches' end class Severity < ConfigClass def has_multiple_values? false end def _section :'severity' end @props={"greater-equal"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "greater-than"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "is"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "is-not"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "less-equal"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "less-than"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}} def greater_equal prop_get('greater-equal') end def greater_equal=(val) prop_set('greater-equal', val) end def greater_than prop_get('greater-than') end def greater_than=(val) prop_set('greater-than', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end def less_equal prop_get('less-equal') end def less_equal=(val) prop_set('less-equal', val) end def less_than prop_get('less-than') end def less_than=(val) prop_set('less-than', val) end end # class Severity def severity @subclasses['severity'] ||= Severity.new(parent_instance: self, create_children: @create_children) end class Patches < XML::ConfigClass def has_multiple_values? true end def _section :'patches' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"patch security-bulletin-id or kb-article-id"}} # patch security-bulletin-id or kb-article-id def member prop_get('member') end # patch security-bulletin-id or kb-article-id def member=(val) prop_set('member', val) end end # class Patches def patches if @create_children @subclasses['patches'] ||= Patches.new(parent_instance: self, create_children: @create_children) else Patches.new(parent_instance: self) end end @props={"check"=> {"node-type"=>"element", "type"=>"enum", "default"=>"has-any", "enum"=> [{"value"=>"has-any"}, {"value"=>"has-none"}, {"value"=>"has-all"}]}} def check prop_get('check') end def check=(val) prop_set('check', val) end end # class MissingPatches def missing_patches @subclasses['missing-patches'] ||= MissingPatches.new(parent_instance: self, create_children: @create_children) end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "is-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"is enabled", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # is enabled def is_enabled prop_get('is-enabled') end # is enabled def is_enabled=(val) prop_set('is-enabled', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class PatchManagement def patch_management @subclasses['patch-management'] ||= PatchManagement.new(parent_instance: self, create_children: @create_children) end class DataLossPrevention < ConfigClass def has_multiple_values? false end def _section :'data-loss-prevention' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "is-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"is enabled", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # is enabled def is_enabled prop_get('is-enabled') end # is enabled def is_enabled=(val) prop_set('is-enabled', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class DataLossPrevention def data_loss_prevention @subclasses['data-loss-prevention'] ||= DataLossPrevention.new(parent_instance: self, create_children: @create_children) end class Firewall < ConfigClass def has_multiple_values? false end def _section :'firewall' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "is-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"is enabled", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # is enabled def is_enabled prop_get('is-enabled') end # is enabled def is_enabled=(val) prop_set('is-enabled', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class Firewall def firewall @subclasses['firewall'] ||= Firewall.new(parent_instance: self, create_children: @create_children) end class AntiMalware < ConfigClass def has_multiple_values? false end def _section :'anti-malware' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class VirdefVersion < ConfigClass def has_multiple_values? false end def _section :'virdef-version' end class Within < XML::ConfigClass def has_multiple_values? true end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "versions"=> {"node-type"=>"element", "help-string"=>"specify versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify versions range def versions prop_get('versions') end # specify versions range def versions=(val) prop_set('versions', val) end end # class Within def within if @create_children @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) else Within.new(parent_instance: self) end end class NotWithin < XML::ConfigClass def has_multiple_values? true end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "versions"=> {"node-type"=>"element", "help-string"=>"specify versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify versions range def versions prop_get('versions') end # specify versions range def versions=(val) prop_set('versions', val) end end # class NotWithin def not_within if @create_children @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) else NotWithin.new(parent_instance: self) end end @props={} end # class VirdefVersion def virdef_version @subclasses['virdef-version'] ||= VirdefVersion.new(parent_instance: self, create_children: @create_children) end class ProductVersion < ConfigClass def has_multiple_values? false end def _section :'product-version' end class Within < ConfigClass def has_multiple_values? false end def _section :'within' end @props={"versions"=> {"node-type"=>"element", "help-string"=>"versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # versions range def versions prop_get('versions') end # versions range def versions=(val) prop_set('versions', val) end end # class Within def within @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) end class NotWithin < ConfigClass def has_multiple_values? false end def _section :'not-within' end @props={"versions"=> {"node-type"=>"element", "help-string"=>"versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # versions range def versions prop_get('versions') end # versions range def versions=(val) prop_set('versions', val) end end # class NotWithin def not_within @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) end @props={"greater-equal"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "greater-than"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "less-equal"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "less-than"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def greater_equal prop_get('greater-equal') end def greater_equal=(val) prop_set('greater-equal', val) end def greater_than prop_get('greater-than') end def greater_than=(val) prop_set('greater-than', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end def less_equal prop_get('less-equal') end def less_equal=(val) prop_set('less-equal', val) end def less_than prop_get('less-than') end def less_than=(val) prop_set('less-than', val) end def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end end # class ProductVersion def product_version @subclasses['product-version'] ||= ProductVersion.new(parent_instance: self, create_children: @create_children) end class LastScanTime < ConfigClass def has_multiple_values? false end def _section :'last-scan-time' end class NotAvailable < ConfigClass def has_multiple_values? false end def _section :'not-available' end @props={} end # class NotAvailable def not_available @subclasses['not-available'] ||= NotAvailable.new(parent_instance: self, create_children: @create_children) end class Within < XML::ConfigClass def has_multiple_values? true end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class Within def within if @create_children @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) else Within.new(parent_instance: self) end end class NotWithin < XML::ConfigClass def has_multiple_values? true end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class NotWithin def not_within if @create_children @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) else NotWithin.new(parent_instance: self) end end @props={} end # class LastScanTime def last_scan_time @subclasses['last-scan-time'] ||= LastScanTime.new(parent_instance: self, create_children: @create_children) end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "real-time-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"real time protection", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # real time protection def real_time_protection prop_get('real-time-protection') end # real time protection def real_time_protection=(val) prop_set('real-time-protection', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class AntiMalware def anti_malware @subclasses['anti-malware'] ||= AntiMalware.new(parent_instance: self, create_children: @create_children) end class DiskBackup < ConfigClass def has_multiple_values? false end def _section :'disk-backup' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class LastBackupTime < ConfigClass def has_multiple_values? false end def _section :'last-backup-time' end class NotAvailable < ConfigClass def has_multiple_values? false end def _section :'not-available' end @props={} end # class NotAvailable def not_available @subclasses['not-available'] ||= NotAvailable.new(parent_instance: self, create_children: @create_children) end class Within < XML::ConfigClass def has_multiple_values? true end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class Within def within if @create_children @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) else Within.new(parent_instance: self) end end class NotWithin < XML::ConfigClass def has_multiple_values? true end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class NotWithin def not_within if @create_children @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) else NotWithin.new(parent_instance: self) end end @props={} end # class LastBackupTime def last_backup_time @subclasses['last-backup-time'] ||= LastBackupTime.new(parent_instance: self, create_children: @create_children) end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class DiskBackup def disk_backup @subclasses['disk-backup'] ||= DiskBackup.new(parent_instance: self, create_children: @create_children) end class DiskEncryption < ConfigClass def has_multiple_values? false end def _section :'disk-encryption' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class EncryptedLocations < XML::ConfigClass def has_multiple_values? true end def _section :'encrypted-locations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class EncryptionState < XML::ConfigClass def has_multiple_values? true end def _section :'encryption-state' end @props={"is"=> {"node-type"=>"element", "type"=>"enum", "default"=>"encrypted", "enum"=> [{"value"=>"encrypted"}, {"value"=>"unencrypted"}, {"value"=>"partial"}, {"value"=>"unknown"}]}, "is-not"=> {"node-type"=>"element", "type"=>"enum", "default"=>"encrypted", "enum"=> [{"value"=>"encrypted"}, {"value"=>"unencrypted"}, {"value"=>"partial"}, {"value"=>"unknown"}]}} def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class EncryptionState def encryption_state if @create_children @subclasses['encryption-state'] ||= EncryptionState.new(parent_instance: self, create_children: @create_children) else EncryptionState.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"encryption location", "maxlen"=>"1023", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>["string('not-available')"]}} # encryption location def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class EncryptedLocations def encrypted_locations if @create_children @subclasses['encrypted-locations'] ||= EncryptedLocations.new(parent_instance: self, create_children: @create_children) else EncryptedLocations.new(parent_instance: self) end end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class DiskEncryption def disk_encryption @subclasses['disk-encryption'] ||= DiskEncryption.new(parent_instance: self, create_children: @create_children) end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Process Name"}, "running"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes"}} # Process Name def name prop_get('@name') end def running prop_get('running') end def running=(val) prop_set('running', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry value name"}, "value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Registry value name def name prop_get('@name') end # Registry value data def value_data prop_get('value-data') end # Registry value data def value_data=(val) prop_set('value-data', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry key"}, "default-value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry key default value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Key does not exist or match specified value data"}} # Registry key def name prop_get('@name') end # Registry key default value data def default_value_data prop_get('default-value-data') end # Registry key default value data def default_value_data=(val) prop_set('default-value-data', val) end # Key does not exist or match specified value data def negate prop_get('negate') end # Key does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Key name"}, "value"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Key value"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Key name def name prop_get('@name') end # Key value def value prop_get('value') end # Key value def value=(val) prop_set('value', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Preference list"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Plist does not exist"}} # Preference list def name prop_get('@name') end # Plist does not exist def negate prop_get('negate') end # Plist does not exist def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end @props={} end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end class MobileDevice < ConfigClass def has_multiple_values? false end def _section :'mobile-device' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class LastCheckinTime < ConfigClass def has_multiple_values? false end def _section :'last-checkin-time' end class Within < ConfigClass def has_multiple_values? false end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"365", "min"=>"1", "default"=>"30"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end end # class Within def within @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) end class NotWithin < ConfigClass def has_multiple_values? false end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"365", "min"=>"1", "default"=>"30"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end end # class NotWithin def not_within @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) end @props={} end # class LastCheckinTime def last_checkin_time @subclasses['last-checkin-time'] ||= LastCheckinTime.new(parent_instance: self, create_children: @create_children) end class Imei < ConfigClass def has_multiple_values? false end def _section :'imei' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Imei def imei @subclasses['imei'] ||= Imei.new(parent_instance: self, create_children: @create_children) end class Model < ConfigClass def has_multiple_values? false end def _section :'model' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Model def model @subclasses['model'] ||= Model.new(parent_instance: self, create_children: @create_children) end class PhoneNumber < ConfigClass def has_multiple_values? false end def _section :'phone-number' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class PhoneNumber def phone_number @subclasses['phone-number'] ||= PhoneNumber.new(parent_instance: self, create_children: @create_children) end class Tag < ConfigClass def has_multiple_values? false end def _section :'tag' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry/vsys/tags/entry/@name", "#myentry/vsys/tags/entry/@name"]}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry/vsys/tags/entry/@name", "#myentry/vsys/tags/entry/@name"]}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry/vsys/tags/entry/@name", "#myentry/vsys/tags/entry/@name"]}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Tag def tag @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) end class Applications < ConfigClass def has_multiple_values? false end def _section :'applications' end class HasMalware < XML::ConfigClass def has_multiple_values? true end def _section :'has-malware' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end class Excludes < XML::ConfigClass def has_multiple_values? true end def _section :'excludes' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "package"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application package name"}, "hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application hash"}} def name prop_get('@name') end # application package name def package prop_get('package') end # application package name def package=(val) prop_set('package', val) end # application hash def hash prop_get('hash') end # application hash def hash=(val) prop_set('hash', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Excludes def excludes if @create_children @subclasses['excludes'] ||= Excludes.new(parent_instance: self, create_children: @create_children) else Excludes.new(parent_instance: self) end end @props={} end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class HasMalware def has_malware if @create_children @subclasses['has-malware'] ||= HasMalware.new(parent_instance: self, create_children: @create_children) else HasMalware.new(parent_instance: self) end end class Includes < XML::ConfigClass def has_multiple_values? true end def _section :'includes' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "package"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application package name"}, "hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application hash"}} def name prop_get('@name') end # application package name def package prop_get('package') end # application package name def package=(val) prop_set('package', val) end # application hash def hash prop_get('hash') end # application hash def hash=(val) prop_set('hash', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Includes def includes if @create_children @subclasses['includes'] ||= Includes.new(parent_instance: self, create_children: @create_children) else Includes.new(parent_instance: self) end end @props={"has-unmanaged-app"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Has apps that are not managed", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}} # Has apps that are not managed def has_unmanaged_app prop_get('has-unmanaged-app') end # Has apps that are not managed def has_unmanaged_app=(val) prop_set('has-unmanaged-app', val) end end # class Applications def applications @subclasses['applications'] ||= Applications.new(parent_instance: self, create_children: @create_children) end @props={"jailbroken"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device is by rooted/jailbroken", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}, "disk-encrypted"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device's disk is encrypted", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}, "passcode-set"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device's passcode is present", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}} # If device is by rooted/jailbroken def jailbroken prop_get('jailbroken') end # If device is by rooted/jailbroken def jailbroken=(val) prop_set('jailbroken', val) end # If device's disk is encrypted def disk_encrypted prop_get('disk-encrypted') end # If device's disk is encrypted def disk_encrypted=(val) prop_set('disk-encrypted', val) end # If device's passcode is present def passcode_set prop_get('passcode-set') end # If device's passcode is present def passcode_set=(val) prop_set('passcode-set', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class MobileDevice def mobile_device @subclasses['mobile-device'] ||= MobileDevice.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Attribute Name", "enum"=> [{"value"=>"serial-no"}, {"value"=>"signature-algorithm"}, {"value"=>"issuer"}, {"value"=>"valid-from"}, {"value"=>"valid-to"}, {"value"=>"subject"}, {"value"=>"certificate-template-name"}, {"value"=>"certificate-template-oid"}, {"value"=>"extended-key-usage"}, {"value"=>"subject-key-identifier"}, {"value"=>"authority-key-identifier"}, {"value"=>"subject-alternative-name-url"}, {"value"=>"subject-alternative-name-email"}, {"value"=>"subject-alternative-name-ip"}, {"value"=>"key-usage"}]}, "value"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Key value"}} # Attribute Name def name prop_get('@name') end # Key value def value prop_get('value') end # Key value def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HipObjects def hip_objects if @create_children @subclasses['hip-objects'] ||= HipObjects.new(parent_instance: self, create_children: @create_children) else HipObjects.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MlavEngineFilebasedEnabled < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-engine-filebased-enabled' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=>[]}, "mlav-policy-action"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"enable(alert-only)"}, {"value"=>"disable"}]}} def name prop_get('@name') end def mlav_policy_action prop_get('mlav-policy-action') end def mlav_policy_action=(val) prop_set('mlav-policy-action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MlavEngineFilebasedEnabled def mlav_engine_filebased_enabled if @create_children @subclasses['mlav-engine-filebased-enabled'] ||= MlavEngineFilebasedEnabled.new(parent_instance: self, create_children: @create_children) else MlavEngineFilebasedEnabled.new(parent_instance: self) end end class Decoder < XML::ConfigClass def has_multiple_values? true end def _section :'decoder' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "content-dependent"=>"yes", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>[]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}, "wildfire-action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}, "mlav-action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end def wildfire_action prop_get('wildfire-action') end def wildfire_action=(val) prop_set('wildfire-action', val) end def mlav_action prop_get('mlav-action') end def mlav_action=(val) prop_set('mlav-action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decoder def decoder if @create_children @subclasses['decoder'] ||= Decoder.new(parent_instance: self, create_children: @create_children) else Decoder.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "content-dependent"=>"yes", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>[]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[0-9]+$", "help-string"=>"threat id"}} # threat id def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end class MlavException < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"mlav exception feature vector"}, "filename"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # mlav exception feature vector def name prop_get('@name') end def filename prop_get('filename') end def filename=(val) prop_set('filename', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MlavException def mlav_exception if @create_children @subclasses['mlav-exception'] ||= MlavException.new(parent_instance: self, create_children: @create_children) else MlavException.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "packet-capture"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class BotnetDomains < ConfigClass def has_multiple_values? false end def _section :'botnet-domains' end class Lists < XML::ConfigClass def has_multiple_values? true end def _section :'lists' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={} end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end class Sinkhole < ConfigClass def has_multiple_values? false end def _section :'sinkhole' end @props={} end # class Sinkhole def sinkhole @subclasses['sinkhole'] ||= Sinkhole.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"List name, alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/shared/external-list/entry[type/domain]/@name", "#myentry(vsys)/external-list/entry[type/domain]/@name", "string('default-paloalto-dns')"]}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # List name, alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Lists def lists if @create_children @subclasses['lists'] ||= Lists.new(parent_instance: self, create_children: @create_children) else Lists.new(parent_instance: self) end end class DnsSecurityCategories < XML::ConfigClass def has_multiple_values? true end def _section :'dns-security-categories' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["##/predefined/pan-dns-security-categories/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"block"}, {"value"=>"sinkhole"}]}, "log-level"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"none"}, {"value"=>"low"}, {"value"=>"informational"}, {"value"=>"medium"}, {"value"=>"high"}, {"value"=>"critical"}]}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end def log_level prop_get('log-level') end def log_level=(val) prop_set('log-level', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DnsSecurityCategories def dns_security_categories if @create_children @subclasses['dns-security-categories'] ||= DnsSecurityCategories.new(parent_instance: self, create_children: @create_children) else DnsSecurityCategories.new(parent_instance: self) end end class Whitelist < XML::ConfigClass def has_multiple_values? true end def _section :'whitelist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"256", "regex"=>"^(\\*\\.)?([a-zA-Z0-9_-]+\\.)*([a-zA-Z0-9_-]+)$"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Whitelist def whitelist if @create_children @subclasses['whitelist'] ||= Whitelist.new(parent_instance: self, create_children: @create_children) else Whitelist.new(parent_instance: self) end end class Sinkhole < ConfigClass def has_multiple_values? false end def _section :'sinkhole' end @props={"ipv4-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"pan-sinkhole-default-ip", "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"127.0.0.1", "help-string"=>"IPv4 Loopback IP"}, {"value"=>"pan-sinkhole-default-ip", "help-string"=>"Palo Alto Networks Sinkhole IP"}]}}, "ipv6-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"::1", "multi-types"=> {"ipspec"=>{}, "enum"=>[{"value"=>"::1", "help-string"=>"IPv6 Loopback IP"}]}}} def ipv4_address prop_get('ipv4-address') end def ipv4_address=(val) prop_set('ipv4-address', val) end def ipv6_address prop_get('ipv6-address') end def ipv6_address=(val) prop_set('ipv6-address', val) end end # class Sinkhole def sinkhole @subclasses['sinkhole'] ||= Sinkhole.new(parent_instance: self, create_children: @create_children) end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"threat id"}} # threat id def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end @props={} end # class BotnetDomains def botnet_domains @subclasses['botnet-domains'] ||= BotnetDomains.new(parent_instance: self, create_children: @create_children) end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Severity < XML::ConfigClass def has_multiple_values? true end def _section :'severity' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All severities"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Severity def severity if @create_children @subclasses['severity'] ||= Severity.new(parent_instance: self, create_children: @create_children) else Severity.new(parent_instance: self) end end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-name"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "optional"=>"yes", "help-string"=>"Threat name", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"any"}]}}, "category"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/category/entry[spyware]/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Threat name def threat_name prop_get('threat-name') end # Threat name def threat_name=(val) prop_set('threat-name', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end class ExemptIp < XML::ConfigClass def has_multiple_values? true end def _section :'exempt-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Exempt IP address"}} # Exempt IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExemptIp def exempt_ip if @create_children @subclasses['exempt-ip'] ||= ExemptIp.new(parent_instance: self, create_children: @create_children) else ExemptIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id"}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # threat id def name prop_get('@name') end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Cve < XML::ConfigClass def has_multiple_values? true end def _section :'cve' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "maxlen"=>"63", "optional"=>"yes", "default"=>"any", "help-string"=>"CVE #, CVE-1999-0001 etc", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"All CVE"}]}}} # CVE #, CVE-1999-0001 etc def member prop_get('member') end # CVE #, CVE-1999-0001 etc def member=(val) prop_set('member', val) end end # class Cve def cve if @create_children @subclasses['cve'] ||= Cve.new(parent_instance: self, create_children: @create_children) else Cve.new(parent_instance: self) end end class VendorId < XML::ConfigClass def has_multiple_values? true end def _section :'vendor-id' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "maxlen"=>"63", "optional"=>"yes", "default"=>"any", "help-string"=>"Vendor ID", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"All vendors"}]}}} # Vendor ID def member prop_get('member') end # Vendor ID def member=(val) prop_set('member', val) end end # class VendorId def vendor_id if @create_children @subclasses['vendor-id'] ||= VendorId.new(parent_instance: self, create_children: @create_children) else VendorId.new(parent_instance: self) end end class Severity < XML::ConfigClass def has_multiple_values? true end def _section :'severity' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All severities"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Severity def severity if @create_children @subclasses['severity'] ||= Severity.new(parent_instance: self, create_children: @create_children) else Severity.new(parent_instance: self) end end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-name"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "optional"=>"yes", "help-string"=>"Threat name", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"any"}]}}, "host"=> {"node-type"=>"element", "type"=>"enum", "default"=>"any", "enum"=>[{"value"=>"any"}, {"value"=>"client"}, {"value"=>"server"}]}, "category"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/category/entry[vulnerability]/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Threat name def threat_name prop_get('threat-name') end # Threat name def threat_name=(val) prop_set('threat-name', val) end def host prop_get('host') end def host=(val) prop_set('host', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end class ExemptIp < XML::ConfigClass def has_multiple_values? true end def _section :'exempt-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Exempt IP address"}} # Exempt IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExemptIp def exempt_ip if @create_children @subclasses['exempt-ip'] ||= ExemptIp.new(parent_instance: self, create_children: @create_children) else ExemptIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id"}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # threat id def name prop_get('@name') end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Allow < XML::ConfigClass def has_multiple_values? true end def _section :'allow' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Allow def allow if @create_children @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) else Allow.new(parent_instance: self) end end class Alert < XML::ConfigClass def has_multiple_values? true end def _section :'alert' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Alert def alert if @create_children @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) else Alert.new(parent_instance: self) end end class Block < XML::ConfigClass def has_multiple_values? true end def _section :'block' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Block def block if @create_children @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) else Block.new(parent_instance: self) end end class Continue < XML::ConfigClass def has_multiple_values? true end def _section :'continue' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Continue def continue if @create_children @subclasses['continue'] ||= Continue.new(parent_instance: self, create_children: @create_children) else Continue.new(parent_instance: self) end end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end class CredentialEnforcement < ConfigClass def has_multiple_values? false end def _section :'credential-enforcement' end class Mode < XML::ConfigClass def has_multiple_values? true end def _section :'mode' end class Disabled < ConfigClass def has_multiple_values? false end def _section :'disabled' end @props={} end # class Disabled def disabled @subclasses['disabled'] ||= Disabled.new(parent_instance: self, create_children: @create_children) end class IpUser < ConfigClass def has_multiple_values? false end def _section :'ip-user' end @props={} end # class IpUser def ip_user @subclasses['ip-user'] ||= IpUser.new(parent_instance: self, create_children: @create_children) end class DomainCredentials < ConfigClass def has_multiple_values? false end def _section :'domain-credentials' end @props={} end # class DomainCredentials def domain_credentials @subclasses['domain-credentials'] ||= DomainCredentials.new(parent_instance: self, create_children: @create_children) end @props={"group-mapping"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "default"=>"any", "help-string"=>"Use Group Mapping", "autocomplete"=>"yes", "memberof"=>["string('any')"]}} # Use Group Mapping def group_mapping prop_get('group-mapping') end # Use Group Mapping def group_mapping=(val) prop_set('group-mapping', val) end end # class Mode def mode if @create_children @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) else Mode.new(parent_instance: self) end end class Allow < XML::ConfigClass def has_multiple_values? true end def _section :'allow' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Allow def allow if @create_children @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) else Allow.new(parent_instance: self) end end class Alert < XML::ConfigClass def has_multiple_values? true end def _section :'alert' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Alert def alert if @create_children @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) else Alert.new(parent_instance: self) end end class Block < XML::ConfigClass def has_multiple_values? true end def _section :'block' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Block def block if @create_children @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) else Block.new(parent_instance: self) end end class Continue < XML::ConfigClass def has_multiple_values? true end def _section :'continue' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Continue def continue if @create_children @subclasses['continue'] ||= Continue.new(parent_instance: self, create_children: @create_children) else Continue.new(parent_instance: self) end end @props={"log-severity"=> {"node-type"=>"element", "type"=>"string", "default"=>"medium", "help-string"=>"Log severity when credential matched", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}} # Log severity when credential matched def log_severity prop_get('log-severity') end # Log severity when credential matched def log_severity=(val) prop_set('log-severity', val) end end # class CredentialEnforcement def credential_enforcement @subclasses['credential-enforcement'] ||= CredentialEnforcement.new(parent_instance: self, create_children: @create_children) end class HttpHeaderInsertion < XML::ConfigClass def has_multiple_values? true end def _section :'http-header-insertion' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"100", "help-string"=>"Header name"}, "header"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"100", "complete-handler"=>"http-header-insertion-hdr-name-completer"}, "value"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"512", "complete-handler"=>"http-header-insertion-hdr-val-completer", "autocomplete"=>"yes"}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # Header name def name prop_get('@name') end def header prop_get('header') end def header=(val) prop_set('header', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Domains < XML::ConfigClass def has_multiple_values? true end def _section :'domains' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"254", "max-count"=>"50", "complete-handler"=>"http-header-insertion-host-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Domains def domains if @create_children @subclasses['domains'] ||= Domains.new(parent_instance: self, create_children: @create_children) else Domains.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"128", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$", "complete-handler"=>"http-header-insertion-type-completer", "autocomplete"=>"yes", "memberof"=> ["string('Custom')", "##/predefined/header-injection/entry/type"]}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"256", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HttpHeaderInsertion def http_header_insertion if @create_children @subclasses['http-header-insertion'] ||= HttpHeaderInsertion.new(parent_instance: self, create_children: @create_children) else HttpHeaderInsertion.new(parent_instance: self) end end class MlavCategoryException < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-category-exception' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class MlavCategoryException def mlav_category_exception if @create_children @subclasses['mlav-category-exception'] ||= MlavCategoryException.new(parent_instance: self, create_children: @create_children) else MlavCategoryException.new(parent_instance: self) end end class MlavEngineUrlbasedEnabled < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-engine-urlbased-enabled' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=>[]}, "mlav-policy-action"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}, {"value"=>"allow"}]}} def name prop_get('@name') end def mlav_policy_action prop_get('mlav-policy-action') end def mlav_policy_action=(val) prop_set('mlav-policy-action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MlavEngineUrlbasedEnabled def mlav_engine_urlbased_enabled if @create_children @subclasses['mlav-engine-urlbased-enabled'] ||= MlavEngineUrlbasedEnabled.new(parent_instance: self, create_children: @create_children) else MlavEngineUrlbasedEnabled.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "enable-container-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Track container page"}, "log-container-page-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Log container page only"}, "safe-search-enforcement"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Safe-Search will be enforced if it is set "}, "log-http-hdr-xff"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log HTTP Header X-Forwarded-For field"}, "log-http-hdr-user-agent"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log HTTP Header User-Agent field"}, "log-http-hdr-referer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log HTTP Header Referer field"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # Track container page def enable_container_page prop_get('enable-container-page') end # Track container page def enable_container_page=(val) prop_set('enable-container-page', val) end # Log container page only def log_container_page_only prop_get('log-container-page-only') end # Log container page only def log_container_page_only=(val) prop_set('log-container-page-only', val) end # Safe-Search will be enforced if it is set def safe_search_enforcement prop_get('safe-search-enforcement') end # Safe-Search will be enforced if it is set def safe_search_enforcement=(val) prop_set('safe-search-enforcement', val) end # Log HTTP Header X-Forwarded-For field def log_http_hdr_xff prop_get('log-http-hdr-xff') end # Log HTTP Header X-Forwarded-For field def log_http_hdr_xff=(val) prop_set('log-http-hdr-xff', val) end # Log HTTP Header User-Agent field def log_http_hdr_user_agent prop_get('log-http-hdr-user-agent') end # Log HTTP Header User-Agent field def log_http_hdr_user_agent=(val) prop_set('log-http-hdr-user-agent', val) end # Log HTTP Header Referer field def log_http_hdr_referer prop_get('log-http-hdr-referer') end # Log HTTP Header Referer field def log_http_hdr_referer=(val) prop_set('log-http-hdr-referer', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[file-type-ident='yes']/@name", "#myentry(vsys)/application/entry[file-type-ident='yes']/@name", "#config/shared/application/entry[file-type-ident='yes']/@name", "#config/shared/content-preview/application/entry[file-type-ident='yes']/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All applications"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All file types"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "direction"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"upload"}, {"value"=>"download"}, {"value"=>"both"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"alert", "enum"=>[{"value"=>"alert"}, {"value"=>"block"}, {"value"=>"continue"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[file-forward='yes']/@name", "#myentry(vsys)/application/entry[file-forward='yes']/@name", "#config/shared/application/entry[file-forward='yes']/@name", "#config/shared/content-preview/application/entry[file-forward='yes']/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All applications"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All types"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "direction"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"upload"}, {"value"=>"download"}, {"value"=>"both"}]}, "analysis"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"public-cloud", "enum"=>[{"value"=>"public-cloud"}, {"value"=>"private-cloud"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end def analysis prop_get('analysis') end def analysis=(val) prop_set('analysis', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"47", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class CustomUrlCategory < XML::ConfigClass def has_multiple_values? true end def _section :'custom-url-category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "complete-handler"=>"custom-url-category-member-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "type"=> {"node-type"=>"element", "type"=>"string", "default"=>"URL List", "autocomplete"=>"yes", "memberof"=>["string('URL List')", "string('Category Match')"]}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def type prop_get('type') end def type=(val) prop_set('type', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CustomUrlCategory def custom_url_category if @create_children @subclasses['custom-url-category'] ||= CustomUrlCategory.new(parent_instance: self, create_children: @create_children) else CustomUrlCategory.new(parent_instance: self) end end class MlavCategoryExceptionQuickset < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-category-exception-quickset' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/custom-url-category/entry[type='URL List']/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class MlavCategoryExceptionQuickset def mlav_category_exception_quickset if @create_children @subclasses['mlav-category-exception-quickset'] ||= MlavCategoryExceptionQuickset.new(parent_instance: self, create_children: @create_children) else MlavCategoryExceptionQuickset.new(parent_instance: self) end end class DataObjects < XML::ConfigClass def has_multiple_values? true end def _section :'data-objects' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PatternType < XML::ConfigClass def has_multiple_values? true end def _section :'pattern-type' end class Predefined < ConfigClass def has_multiple_values? false end def _section :'predefined' end class Pattern < XML::ConfigClass def has_multiple_values? true end def _section :'pattern' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1024", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dlp-file-property/predefined-regex/entry/@name", "string('credit-card-numbers')", "string('social-security-numbers')", "string('social-security-numbers-without-dash')", "string('ABA-Routing-Number')", "string('CUSIP-Identification-Number')", "string('DEA-Registration-Number')", "string('INSEE-Identification-Number')", "string('Codice-Fiscale-Identification-Number')", "string('DNI-Identification-Number')", "string('NIF-Identification-Number')", "string('AHV-Identification-Number')", "string('NHI-Identification-Number')", "string('IRD-Identification-Number')", "string('MyNumber-Identification-Number')", "string('CorporateNumber-Identification-Number')", "string('PRC-Identification-Number')", "string('HK-Identification-Number')", "string('Permanent-Account-Identification-Number')", "string('NRIC-Identification-Number')", "string('MyKad-Identification-Number')", "string('RRN-Identification-Number')", "string('NIN-Identification-Number')"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Pattern def pattern if @create_children @subclasses['pattern'] ||= Pattern.new(parent_instance: self, create_children: @create_children) else Pattern.new(parent_instance: self) end end @props={} end # class Predefined def predefined @subclasses['predefined'] ||= Predefined.new(parent_instance: self, create_children: @create_children) end class Regex < ConfigClass def has_multiple_values? false end def _section :'regex' end class Pattern < XML::ConfigClass def has_multiple_values? true end def _section :'pattern' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "regex"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"1024"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def regex prop_get('regex') end def regex=(val) prop_set('regex', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Pattern def pattern if @create_children @subclasses['pattern'] ||= Pattern.new(parent_instance: self, create_children: @create_children) else Pattern.new(parent_instance: self) end end @props={} end # class Regex def regex @subclasses['regex'] ||= Regex.new(parent_instance: self, create_children: @create_children) end class FileProperties < ConfigClass def has_multiple_values? false end def _section :'file-properties' end class Pattern < XML::ConfigClass def has_multiple_values? true end def _section :'pattern' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "file-type"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/dlp-file-property/file-type/entry/@name"]}, "file-property"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dlp-file-property/file-type/entry[@name='$file_type']/file-property/entry/@name"]}, "property-value"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"256"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def file_type prop_get('file-type') end def file_type=(val) prop_set('file-type', val) end def file_property prop_get('file-property') end def file_property=(val) prop_set('file-property', val) end def property_value prop_get('property-value') end def property_value=(val) prop_set('property-value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Pattern def pattern if @create_children @subclasses['pattern'] ||= Pattern.new(parent_instance: self, create_children: @create_children) else Pattern.new(parent_instance: self) end end @props={} end # class FileProperties def file_properties @subclasses['file-properties'] ||= FileProperties.new(parent_instance: self, create_children: @create_children) end @props={} end # class PatternType def pattern_type if @create_children @subclasses['pattern-type'] ||= PatternType.new(parent_instance: self, create_children: @create_children) else PatternType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DataObjects def data_objects if @create_children @subclasses['data-objects'] ||= DataObjects.new(parent_instance: self, create_children: @create_children) else DataObjects.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[data-ident='yes']/@name", "#myentry(vsys)/application/entry[data-ident='yes']/@name", "#config/shared/application/entry[data-ident='yes']/@name", "#config/shared/content-preview/application/entry[data-ident='yes']/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All applications"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/tdb/file-type/entry[data-ident='yes']/@name", "##/predefined/dlp-file-property/file-type/entry/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "data-object"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#profiles/data-objects/entry/@name", "#config/shared/profiles/data-objects/entry/@name"]}, "direction"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"upload"}, {"value"=>"download"}, {"value"=>"both"}]}, "alert-threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"1", "optional"=>"yes"}, "block-threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"1", "optional"=>"yes"}, "log-severity"=> {"node-type"=>"element", "type"=>"string", "default"=>"informational", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def data_object prop_get('data-object') end def data_object=(val) prop_set('data-object', val) end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end def alert_threshold prop_get('alert-threshold') end def alert_threshold=(val) prop_set('alert-threshold', val) end def block_threshold prop_get('block-threshold') end def block_threshold=(val) prop_set('block-threshold', val) end def log_severity prop_get('log-severity') end def log_severity=(val) prop_set('log-severity', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "data-capture"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def data_capture prop_get('data-capture') end def data_capture=(val) prop_set('data-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "match"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def match prop_get('match') end def match=(val) prop_set('match', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GtpInspection < ConfigClass def has_multiple_values? false end def _section :'gtp-inspection' end class GtpC < ConfigClass def has_multiple_values? false end def _section :'gtp-c' end class Gtpv1C < ConfigClass def has_multiple_values? false end def _section :'gtpv1-c' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"alert", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}]}, "reserved-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "order-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "length-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "reserved-hdr-field"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "unknown-message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def action prop_get('action') end def action=(val) prop_set('action', val) end def reserved_ie prop_get('reserved-ie') end def reserved_ie=(val) prop_set('reserved-ie', val) end def order_of_ie prop_get('order-of-ie') end def order_of_ie=(val) prop_set('order-of-ie', val) end def length_of_ie prop_get('length-of-ie') end def length_of_ie=(val) prop_set('length-of-ie', val) end def reserved_hdr_field prop_get('reserved-hdr-field') end def reserved_hdr_field=(val) prop_set('reserved-hdr-field', val) end def unknown_message prop_get('unknown-message') end def unknown_message=(val) prop_set('unknown-message', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end @props={"stateful-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def stateful_inspection prop_get('stateful-inspection') end def stateful_inspection=(val) prop_set('stateful-inspection', val) end end # class Gtpv1C def gtpv1_c @subclasses['gtpv1-c'] ||= Gtpv1C.new(parent_instance: self, create_children: @create_children) end class Gtpv2C < ConfigClass def has_multiple_values? false end def _section :'gtpv2-c' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"alert", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}]}, "reserved-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "length-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "reserved-hdr-field"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "unknown-message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def action prop_get('action') end def action=(val) prop_set('action', val) end def reserved_ie prop_get('reserved-ie') end def reserved_ie=(val) prop_set('reserved-ie', val) end def length_of_ie prop_get('length-of-ie') end def length_of_ie=(val) prop_set('length-of-ie', val) end def reserved_hdr_field prop_get('reserved-hdr-field') end def reserved_hdr_field=(val) prop_set('reserved-hdr-field', val) end def unknown_message prop_get('unknown-message') end def unknown_message=(val) prop_set('unknown-message', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end @props={"stateful-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def stateful_inspection prop_get('stateful-inspection') end def stateful_inspection=(val) prop_set('stateful-inspection', val) end end # class Gtpv2C def gtpv2_c @subclasses['gtpv2-c'] ||= Gtpv2C.new(parent_instance: self, create_children: @create_children) end @props={} end # class GtpC def gtp_c @subclasses['gtp-c'] ||= GtpC.new(parent_instance: self, create_children: @create_children) end class GtpU < ConfigClass def has_multiple_values? false end def _section :'gtp-u' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"alert", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}]}, "reserved-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "order-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "length-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "reserved-hdr-field"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "unknown-message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def action prop_get('action') end def action=(val) prop_set('action', val) end def reserved_ie prop_get('reserved-ie') end def reserved_ie=(val) prop_set('reserved-ie', val) end def order_of_ie prop_get('order-of-ie') end def order_of_ie=(val) prop_set('order-of-ie', val) end def length_of_ie prop_get('length-of-ie') end def length_of_ie=(val) prop_set('length-of-ie', val) end def reserved_hdr_field prop_get('reserved-hdr-field') end def reserved_hdr_field=(val) prop_set('reserved-hdr-field', val) end def unknown_message prop_get('unknown-message') end def unknown_message=(val) prop_set('unknown-message', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end @props={"gtp-in-gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"block", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "user-ip-spoofing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"block", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "gtpu-content-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "GTPv1-C, GTPv2-C and/or 5G-C Stateful Inspection with GTP-U Content Inspection provides IMSI and IMEI correlation with IP traffic encapsulated in GTP-U packets"}} def gtp_in_gtp prop_get('gtp-in-gtp') end def gtp_in_gtp=(val) prop_set('gtp-in-gtp', val) end def user_ip_spoofing prop_get('user-ip-spoofing') end def user_ip_spoofing=(val) prop_set('user-ip-spoofing', val) end # GTPv1-C, GTPv2-C and/or 5G-C Stateful Inspection with GTP-U Content Inspection provides IMSI and IMEI correlation with IP traffic encapsulated in GTP-U packets def gtpu_content_inspection prop_get('gtpu-content-inspection') end # GTPv1-C, GTPv2-C and/or 5G-C Stateful Inspection with GTP-U Content Inspection provides IMSI and IMEI correlation with IP traffic encapsulated in GTP-U packets def gtpu_content_inspection=(val) prop_set('gtpu-content-inspection', val) end end # class GtpU def gtp_u @subclasses['gtp-u'] ||= GtpU.new(parent_instance: self, create_children: @create_children) end class Gtp5gC < ConfigClass def has_multiple_values? false end def _section :'gtp-5g-c' end @props={"gtp-5g-http2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"5g http2 inspection"}} # 5g http2 inspection def gtp_5g_http2 prop_get('gtp-5g-http2') end # 5g http2 inspection def gtp_5g_http2=(val) prop_set('gtp-5g-http2', val) end end # class Gtp5gC def gtp_5g_c @subclasses['gtp-5g-c'] ||= Gtp5gC.new(parent_instance: self, create_children: @create_children) end @props={} end # class GtpInspection def gtp_inspection @subclasses['gtp-inspection'] ||= GtpInspection.new(parent_instance: self, create_children: @create_children) end class Filtering < ConfigClass def has_multiple_values? false end def _section :'filtering' end class ImsiPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'imsi-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"15", "help-string"=>"digit string followed by an optional *", "regex"=>"^([*]|[0-9][0-9]+[* 0-9])$"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"36"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}} # digit string followed by an optional * def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ImsiPrefix def imsi_prefix if @create_children @subclasses['imsi-prefix'] ||= ImsiPrefix.new(parent_instance: self, create_children: @create_children) else ImsiPrefix.new(parent_instance: self) end end class Apn < XML::ConfigClass def has_multiple_values? true end def _section :'apn' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"100", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "regex"=>"^([*]|[ -)+-~]+)$"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"36"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Apn def apn if @create_children @subclasses['apn'] ||= Apn.new(parent_instance: self, create_children: @create_children) else Apn.new(parent_instance: self) end end class Rat < ConfigClass def has_multiple_values? false end def _section :'rat' end @props={"utran"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "geran"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "wlan"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "gan"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "hspa-evolution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "eutran"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "virtual"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "eutran-nb-iot"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "lte-m"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "nr"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}} def utran prop_get('utran') end def utran=(val) prop_set('utran', val) end def geran prop_get('geran') end def geran=(val) prop_set('geran', val) end def wlan prop_get('wlan') end def wlan=(val) prop_set('wlan', val) end def gan prop_get('gan') end def gan=(val) prop_set('gan', val) end def hspa_evolution prop_get('hspa-evolution') end def hspa_evolution=(val) prop_set('hspa-evolution', val) end def eutran prop_get('eutran') end def eutran=(val) prop_set('eutran', val) end def virtual prop_get('virtual') end def virtual=(val) prop_set('virtual', val) end def eutran_nb_iot prop_get('eutran-nb-iot') end def eutran_nb_iot=(val) prop_set('eutran-nb-iot', val) end def lte_m prop_get('lte-m') end def lte_m=(val) prop_set('lte-m', val) end def nr prop_get('nr') end def nr=(val) prop_set('nr', val) end end # class Rat def rat @subclasses['rat'] ||= Rat.new(parent_instance: self, create_children: @create_children) end @props={} end # class Filtering def filtering @subclasses['filtering'] ||= Filtering.new(parent_instance: self, create_children: @create_children) end class TunnelLimit < ConfigClass def has_multiple_values? false end def _section :'tunnel-limit' end class GtpU < ConfigClass def has_multiple_values? false end def _section :'gtp-u' end @props={"max-tunnel-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"100000000", "default"=>"0"}, "alert-tunnel-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"100000000", "default"=>"0"}} def max_tunnel_limit prop_get('max-tunnel-limit') end def max_tunnel_limit=(val) prop_set('max-tunnel-limit', val) end def alert_tunnel_limit prop_get('alert-tunnel-limit') end def alert_tunnel_limit=(val) prop_set('alert-tunnel-limit', val) end end # class GtpU def gtp_u @subclasses['gtp-u'] ||= GtpU.new(parent_instance: self, create_children: @create_children) end @props={"log-frequency"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10000000", "default"=>"100"}} def log_frequency prop_get('log-frequency') end def log_frequency=(val) prop_set('log-frequency', val) end end # class TunnelLimit def tunnel_limit @subclasses['tunnel-limit'] ||= TunnelLimit.new(parent_instance: self, create_children: @create_children) end class Overbilling < ConfigClass def has_multiple_values? false end def _section :'overbilling' end @props={"vsys"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "no-default"=>"yes", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def vsys prop_get('vsys') end # alphanumeric string [ 0-9a-zA-Z._-] def vsys=(val) prop_set('vsys', val) end end # class Overbilling def overbilling @subclasses['overbilling'] ||= Overbilling.new(parent_instance: self, create_children: @create_children) end class GtpLog < ConfigClass def has_multiple_values? false end def _section :'gtp-log' end class Gtpv1cAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtpv1c-allowed-messages' end @props={"tunnel-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "path-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "others"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def tunnel_management prop_get('tunnel-management') end def tunnel_management=(val) prop_set('tunnel-management', val) end def path_management prop_get('path-management') end def path_management=(val) prop_set('path-management', val) end def others prop_get('others') end def others=(val) prop_set('others', val) end end # class Gtpv1cAllowedMessages def gtpv1c_allowed_messages @subclasses['gtpv1c-allowed-messages'] ||= Gtpv1cAllowedMessages.new(parent_instance: self, create_children: @create_children) end class Gtpv2cAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtpv2c-allowed-messages' end @props={"tunnel-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "path-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "others"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def tunnel_management prop_get('tunnel-management') end def tunnel_management=(val) prop_set('tunnel-management', val) end def path_management prop_get('path-management') end def path_management=(val) prop_set('path-management', val) end def others prop_get('others') end def others=(val) prop_set('others', val) end end # class Gtpv2cAllowedMessages def gtpv2c_allowed_messages @subclasses['gtpv2c-allowed-messages'] ||= Gtpv2cAllowedMessages.new(parent_instance: self, create_children: @create_children) end class GtpuAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtpu-allowed-messages' end @props={"tunnel-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "path-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "g-pdu"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "packets-per-tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"1"}} def tunnel_management prop_get('tunnel-management') end def tunnel_management=(val) prop_set('tunnel-management', val) end def path_management prop_get('path-management') end def path_management=(val) prop_set('path-management', val) end def g_pdu prop_get('g-pdu') end def g_pdu=(val) prop_set('g-pdu', val) end def packets_per_tunnel prop_get('packets-per-tunnel') end def packets_per_tunnel=(val) prop_set('packets-per-tunnel', val) end end # class GtpuAllowedMessages def gtpu_allowed_messages @subclasses['gtpu-allowed-messages'] ||= GtpuAllowedMessages.new(parent_instance: self, create_children: @create_children) end class Gtp5gAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtp-5g-allowed-messages' end @props={"N11"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def N11 prop_get('N11') end def N11=(val) prop_set('N11', val) end end # class Gtp5gAllowedMessages def gtp_5g_allowed_messages @subclasses['gtp-5g-allowed-messages'] ||= Gtp5gAllowedMessages.new(parent_instance: self, create_children: @create_children) end @props={"user-location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "packet-capture"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def user_location prop_get('user-location') end def user_location=(val) prop_set('user-location', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class GtpLog def gtp_log @subclasses['gtp-log'] ||= GtpLog.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"128"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SctpInspection < ConfigClass def has_multiple_values? false end def _section :'sctp-inspection' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"unknown-chunk"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}, "chunk-flags"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}, "invalid-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}]}} def unknown_chunk prop_get('unknown-chunk') end def unknown_chunk=(val) prop_set('unknown-chunk', val) end def chunk_flags prop_get('chunk-flags') end def chunk_flags=(val) prop_set('chunk-flags', val) end def invalid_length prop_get('invalid-length') end def invalid_length=(val) prop_set('invalid-length', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end class LogSetting < ConfigClass def has_multiple_values? false end def _section :'log-setting' end @props={"sctp-start"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log at Association Start"}, "sctp-end"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log at Association End"}, "init-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log Allowed Association Initialization Chunks"}, "heartbeat-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log Allowed Heartbeat Chunks"}, "termination-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log Allowed Association Termination Chunks"}, "all-control-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log All Control Chunks"}, "state-failure-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Log State Failure Events"}} # Log at Association Start def sctp_start prop_get('sctp-start') end # Log at Association Start def sctp_start=(val) prop_set('sctp-start', val) end # Log at Association End def sctp_end prop_get('sctp-end') end # Log at Association End def sctp_end=(val) prop_set('sctp-end', val) end # Log Allowed Association Initialization Chunks def init_chunks prop_get('init-chunks') end # Log Allowed Association Initialization Chunks def init_chunks=(val) prop_set('init-chunks', val) end # Log Allowed Heartbeat Chunks def heartbeat_chunks prop_get('heartbeat-chunks') end # Log Allowed Heartbeat Chunks def heartbeat_chunks=(val) prop_set('heartbeat-chunks', val) end # Log Allowed Association Termination Chunks def termination_chunks prop_get('termination-chunks') end # Log Allowed Association Termination Chunks def termination_chunks=(val) prop_set('termination-chunks', val) end # Log All Control Chunks def all_control_chunks prop_get('all-control-chunks') end # Log All Control Chunks def all_control_chunks=(val) prop_set('all-control-chunks', val) end # Log State Failure Events def state_failure_events prop_get('state-failure-events') end # Log State Failure Events def state_failure_events=(val) prop_set('state-failure-events', val) end end # class LogSetting def log_setting @subclasses['log-setting'] ||= LogSetting.new(parent_instance: self, create_children: @create_children) end @props={"multihoming"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"4"}} def multihoming prop_get('multihoming') end def multihoming=(val) prop_set('multihoming', val) end end # class SctpInspection def sctp_inspection @subclasses['sctp-inspection'] ||= SctpInspection.new(parent_instance: self, create_children: @create_children) end class SctpFiltering < ConfigClass def has_multiple_values? false end def _section :'sctp-filtering' end class SctpPpid < XML::ConfigClass def has_multiple_values? true end def _section :'sctp-ppid' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ppid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/sctp/sctp-id-mapping/category[@name='sctp-payload-protocol']/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def ppid prop_get('ppid') end def ppid=(val) prop_set('ppid', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SctpPpid def sctp_ppid if @create_children @subclasses['sctp-ppid'] ||= SctpPpid.new(parent_instance: self, create_children: @create_children) else SctpPpid.new(parent_instance: self) end end class SctpSs7 < XML::ConfigClass def has_multiple_values? true end def _section :'sctp-ss7' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ss7CpSsn < XML::ConfigClass def has_multiple_values? true end def _section :'ss7-cp-ssn' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ss7OpCode < XML::ConfigClass def has_multiple_values? true end def _section :'ss7-op-code' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"256", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/sctp/sctp-id-mapping/category[@name='ss7-ssn-op-code']/ssn[@name='$ssn_name']/opcode/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ss7OpCode def ss7_op_code if @create_children @subclasses['ss7-op-code'] ||= Ss7OpCode.new(parent_instance: self, create_children: @create_children) else Ss7OpCode.new(parent_instance: self) end end class Ss7CpGt < XML::ConfigClass def has_multiple_values? true end def _section :'ss7-cp-gt' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"512", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"15", "help-string"=>"digit string followed by an optional *", "regex"=>"^([0-9])*[* 0-9]$"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ss7CpGt def ss7_cp_gt if @create_children @subclasses['ss7-cp-gt'] ||= Ss7CpGt.new(parent_instance: self, create_children: @create_children) else Ss7CpGt.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "help-string"=>"SCCP SSN name", "autocomplete"=>"yes", "memberof"=>[]}} # SCCP SSN name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ss7CpSsn def ss7_cp_ssn if @create_children @subclasses['ss7-cp-ssn'] ||= Ss7CpSsn.new(parent_instance: self, create_children: @create_children) else Ss7CpSsn.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"20", "sub-type"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SctpSs7 def sctp_ss7 if @create_children @subclasses['sctp-ss7'] ||= SctpSs7.new(parent_instance: self, create_children: @create_children) else SctpSs7.new(parent_instance: self) end end class SctpDiameter < XML::ConfigClass def has_multiple_values? true end def _section :'sctp-diameter' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DiameterApplicationId < XML::ConfigClass def has_multiple_values? true end def _section :'diameter-application-id' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DiameterCmdCode < XML::ConfigClass def has_multiple_values? true end def _section :'diameter-cmd-code' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"128", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/sctp/sctp-id-mapping/category[@name='diameter-application-id-command-code']/application-id[@name='$cc_name']/command-code/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DiameterCmdCode def diameter_cmd_code if @create_children @subclasses['diameter-cmd-code'] ||= DiameterCmdCode.new(parent_instance: self, create_children: @create_children) else DiameterCmdCode.new(parent_instance: self) end end class DiameterAvp < XML::ConfigClass def has_multiple_values? true end def _section :'diameter-avp' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"512", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"16777215"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DiameterAvp def diameter_avp if @create_children @subclasses['diameter-avp'] ||= DiameterAvp.new(parent_instance: self, create_children: @create_children) else DiameterAvp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"appid name", "autocomplete"=>"yes", "memberof"=>[]}} # appid name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DiameterApplicationId def diameter_application_id if @create_children @subclasses['diameter-application-id'] ||= DiameterApplicationId.new(parent_instance: self, create_children: @create_children) else DiameterApplicationId.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SctpDiameter def sctp_diameter if @create_children @subclasses['sctp-diameter'] ||= SctpDiameter.new(parent_instance: self, create_children: @create_children) else SctpDiameter.new(parent_instance: self) end end @props={} end # class SctpFiltering def sctp_filtering @subclasses['sctp-filtering'] ||= SctpFiltering.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end class DosProtection < XML::ConfigClass def has_multiple_values? true end def _section :'dos-protection' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Flood < ConfigClass def has_multiple_values? false end def _section :'flood' end class TcpSyn < ConfigClass def has_multiple_values? false end def _section :'tcp-syn' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end class SynCookies < ConfigClass def has_multiple_values? false end def _section :'syn-cookies' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"0", "help-string"=>"Connection rate (cps) to activate SYN cookies proxy"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"1000000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to activate SYN cookies proxy def activate_rate prop_get('activate-rate') end # Connection rate (cps) to activate SYN cookies proxy def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class SynCookies def syn_cookies @subclasses['syn-cookies'] ||= SynCookies.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class TcpSyn def tcp_syn @subclasses['tcp-syn'] ||= TcpSyn.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end class Icmp < ConfigClass def has_multiple_values? false end def _section :'icmp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmp def icmp @subclasses['icmp'] ||= Icmp.new(parent_instance: self, create_children: @create_children) end class Icmpv6 < ConfigClass def has_multiple_values? false end def _section :'icmpv6' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmpv6 def icmpv6 @subclasses['icmpv6'] ||= Icmpv6.new(parent_instance: self, create_children: @create_children) end class OtherIp < ConfigClass def has_multiple_values? false end def _section :'other-ip' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class OtherIp def other_ip @subclasses['other-ip'] ||= OtherIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Flood def flood @subclasses['flood'] ||= Flood.new(parent_instance: self, create_children: @create_children) end class Resource < ConfigClass def has_multiple_values? false end def _section :'resource' end class Sessions < ConfigClass def has_multiple_values? false end def _section :'sessions' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-concurrent-limit"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"4194304", "platform-max"=>"cfg.general.max-session", "default"=>"32768"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end def max_concurrent_limit prop_get('max-concurrent-limit') end def max_concurrent_limit=(val) prop_set('max-concurrent-limit', val) end end # class Sessions def sessions @subclasses['sessions'] ||= Sessions.new(parent_instance: self, create_children: @create_children) end @props={} end # class Resource def resource @subclasses['resource'] ||= Resource.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "type"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"aggregate"}, {"value"=>"classified"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def type prop_get('type') end def type=(val) prop_set('type', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DosProtection def dos_protection if @create_children @subclasses['dos-protection'] ||= DosProtection.new(parent_instance: self, create_children: @create_children) else DosProtection.new(parent_instance: self) end end class SdwanPathQuality < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-path-quality' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Metric < ConfigClass def has_multiple_values? false end def _section :'metric' end class Latency < ConfigClass def has_multiple_values? false end def _section :'latency' end @props={"threshold"=> {"node-type"=>"element", "help-string"=>"latency threshold in ms", "type"=>"rangedint", "max"=>"3000", "min"=>"10", "default"=>"100"}, "sensitivity"=> {"node-type"=>"element", "help-string"=>"latency sensitivity", "type"=>"enum", "default"=>"medium", "enum"=> [{"value"=>"low", "help-string"=>"low latency sensitivity"}, {"value"=>"medium", "help-string"=>"medium latency sensitivity"}, {"value"=>"high", "help-string"=>"high latency sensitivity"}]}} # latency threshold in ms def threshold prop_get('threshold') end # latency threshold in ms def threshold=(val) prop_set('threshold', val) end # latency sensitivity def sensitivity prop_get('sensitivity') end # latency sensitivity def sensitivity=(val) prop_set('sensitivity', val) end end # class Latency def latency @subclasses['latency'] ||= Latency.new(parent_instance: self, create_children: @create_children) end class PktLoss < ConfigClass def has_multiple_values? false end def _section :'pkt-loss' end @props={"threshold"=> {"node-type"=>"element", "help-string"=>"percentage pkt-loss", "type"=>"rangedint", "max"=>"100", "min"=>"1", "default"=>"1"}, "sensitivity"=> {"node-type"=>"element", "help-string"=>"pkt-loss sensitivity", "type"=>"enum", "default"=>"medium", "enum"=> [{"value"=>"low", "help-string"=>"low pkt-loss sensitivity"}, {"value"=>"medium", "help-string"=>"medium pkt-loss sensitivity"}, {"value"=>"high", "help-string"=>"high pkt-loss sensitivity"}]}} # percentage pkt-loss def threshold prop_get('threshold') end # percentage pkt-loss def threshold=(val) prop_set('threshold', val) end # pkt-loss sensitivity def sensitivity prop_get('sensitivity') end # pkt-loss sensitivity def sensitivity=(val) prop_set('sensitivity', val) end end # class PktLoss def pkt_loss @subclasses['pkt-loss'] ||= PktLoss.new(parent_instance: self, create_children: @create_children) end class Jitter < ConfigClass def has_multiple_values? false end def _section :'jitter' end @props={"threshold"=> {"node-type"=>"element", "help-string"=>"jitter threshold in ms", "type"=>"rangedint", "max"=>"2000", "min"=>"10", "default"=>"100"}, "sensitivity"=> {"node-type"=>"element", "help-string"=>"jitter sensitivity", "type"=>"enum", "default"=>"medium", "enum"=> [{"value"=>"low", "help-string"=>"low jitter sensitivity"}, {"value"=>"medium", "help-string"=>"medium jitter sensitivity"}, {"value"=>"high", "help-string"=>"high jitter sensitivity"}]}} # jitter threshold in ms def threshold prop_get('threshold') end # jitter threshold in ms def threshold=(val) prop_set('threshold', val) end # jitter sensitivity def sensitivity prop_get('sensitivity') end # jitter sensitivity def sensitivity=(val) prop_set('sensitivity', val) end end # class Jitter def jitter @subclasses['jitter'] ||= Jitter.new(parent_instance: self, create_children: @create_children) end @props={} end # class Metric def metric @subclasses['metric'] ||= Metric.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanPathQuality def sdwan_path_quality if @create_children @subclasses['sdwan-path-quality'] ||= SdwanPathQuality.new(parent_instance: self, create_children: @create_children) else SdwanPathQuality.new(parent_instance: self) end end class SdwanTrafficDistribution < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-traffic-distribution' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LinkTags < XML::ConfigClass def has_multiple_values? true end def _section :'link-tags' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"255", "help-string"=>"Link-Group identifying set of interfaces", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/template-stack/entry/config/devices/entry/vsys/entry/sdwan-interface-profile/entry/link-tag", "#config/devices/entry/template/entry/config/devices/entry/vsys/entry/sdwan-interface-profile/entry/link-tag", "#config/devices/entry/template-stack/entry/config/devices/entry/network/interface/sdwan/units/entry/link-tag", "#config/devices/entry/template/entry/config/devices/entry/network/interface/sdwan/units/entry/link-tag", "#config/devices/entry/template-stack/entry/config/devices/entry/network/interface/tunnel/units/entry/link-tag", "#config/devices/entry/template/entry/config/devices/entry/network/interface/tunnel/units/entry/link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/vif-link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/type/hub/vif-link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/type/branch/vif-link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/type/branch/vif-link-tag"]}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"grade weight in percentage", "type"=>"rangedint", "min"=>"0", "max"=>"100"}} # Link-Group identifying set of interfaces def name prop_get('@name') end # grade weight in percentage def weight prop_get('weight') end # grade weight in percentage def weight=(val) prop_set('weight', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LinkTags def link_tags if @create_children @subclasses['link-tags'] ||= LinkTags.new(parent_instance: self, create_children: @create_children) else LinkTags.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "traffic-distribution"=> {"node-type"=>"element", "help-string"=>"Enable Session Distribution across Links", "type"=>"enum", "default"=>"Best Available Path", "enum"=> [{"value"=>"Best Available Path", "help-string"=>"Best Available Path"}, {"value"=>"Top Down Priority", "help-string"=>"Top Down Priority"}, {"value"=>"Weighted Session Distribution", "help-string"=>"Weighted Session Distribution"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # Enable Session Distribution across Links def traffic_distribution prop_get('traffic-distribution') end # Enable Session Distribution across Links def traffic_distribution=(val) prop_set('traffic-distribution', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanTrafficDistribution def sdwan_traffic_distribution if @create_children @subclasses['sdwan-traffic-distribution'] ||= SdwanTrafficDistribution.new(parent_instance: self, create_children: @create_children) else SdwanTrafficDistribution.new(parent_instance: self) end end class SdwanSaasQuality < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-saas-quality' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MonitorMode < ConfigClass def has_multiple_values? false end def _section :'monitor-mode' end class Adaptive < ConfigClass def has_multiple_values? false end def _section :'adaptive' end @props={} end # class Adaptive def adaptive @subclasses['adaptive'] ||= Adaptive.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end class IpAddress < XML::ConfigClass def has_multiple_values? true end def _section :'ip-address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"Monitor IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(shared-gateway)/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}, "probe-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"Interval in seconds between two probes"}} # Monitor IP address def name prop_get('@name') end # Interval in seconds between two probes def probe_interval prop_get('probe-interval') end # Interval in seconds between two probes def probe_interval=(val) prop_set('probe-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpAddress def ip_address if @create_children @subclasses['ip-address'] ||= IpAddress.new(parent_instance: self, create_children: @create_children) else IpAddress.new(parent_instance: self) end end class Fqdn < ConfigClass def has_multiple_values? false end def _section :'fqdn' end @props={"fqdn-name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"FQDN to be monitored", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[fqdn]/@name", "#config/shared/address/entry[fqdn]/@name", "#myentry(shared-gateway)/address/entry[fqdn]/@name"]}, "probe-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"Interval in seconds between two probes"}} # FQDN to be monitored def fqdn_name prop_get('fqdn-name') end # FQDN to be monitored def fqdn_name=(val) prop_set('fqdn-name', val) end # Interval in seconds between two probes def probe_interval prop_get('probe-interval') end # Interval in seconds between two probes def probe_interval=(val) prop_set('probe-interval', val) end end # class Fqdn def fqdn @subclasses['fqdn'] ||= Fqdn.new(parent_instance: self, create_children: @create_children) end @props={} end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end class HttpHttps < ConfigClass def has_multiple_values? false end def _section :'http-https' end @props={"monitored-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"http or https URL : Ex : https://www.paloaltonetworks.com"}, "probe-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"Interval in seconds between two probes"}} # http or https URL : Ex : https://www.paloaltonetworks.com def monitored_url prop_get('monitored-url') end # http or https URL : Ex : https://www.paloaltonetworks.com def monitored_url=(val) prop_set('monitored-url', val) end # Interval in seconds between two probes def probe_interval prop_get('probe-interval') end # Interval in seconds between two probes def probe_interval=(val) prop_set('probe-interval', val) end end # class HttpHttps def http_https @subclasses['http-https'] ||= HttpHttps.new(parent_instance: self, create_children: @create_children) end @props={} end # class MonitorMode def monitor_mode @subclasses['monitor-mode'] ||= MonitorMode.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanSaasQuality def sdwan_saas_quality if @create_children @subclasses['sdwan-saas-quality'] ||= SdwanSaasQuality.new(parent_instance: self, create_children: @create_children) else SdwanSaasQuality.new(parent_instance: self) end end class SdwanErrorCorrection < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-error-correction' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Mode < ConfigClass def has_multiple_values? false end def _section :'mode' end class ForwardErrorCorrection < ConfigClass def has_multiple_values? false end def _section :'forward-error-correction' end @props={"ratio"=> {"node-type"=>"element", "help-string"=>"Packet Loss Correction Ratio", "type"=>"enum", "default"=>"10% (20:2)", "enum"=> [{"value"=>"10% (20:2)", "help-string"=>"2 parity pkts for every 20 data packets"}, {"value"=>"20% (20:4)", "help-string"=>"4 parity pkts for every 20 data packets"}, {"value"=>"30% (20:6)", "help-string"=>"6 parity pkts for every 20 data packets"}, {"value"=>"40% (20:8)", "help-string"=>"8 parity pkts for every 20 data packets"}, {"value"=>"50% (20:10)", "help-string"=>"10 parity pkts for every 20 data packets"}]}, "recovery-duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5000", "default"=>"1000", "help-string"=> "Time in ms for which FEC packets can remain in the firewall"}} # Packet Loss Correction Ratio def ratio prop_get('ratio') end # Packet Loss Correction Ratio def ratio=(val) prop_set('ratio', val) end # Time in ms for which FEC packets can remain in the firewall def recovery_duration prop_get('recovery-duration') end # Time in ms for which FEC packets can remain in the firewall def recovery_duration=(val) prop_set('recovery-duration', val) end end # class ForwardErrorCorrection def forward_error_correction @subclasses['forward-error-correction'] ||= ForwardErrorCorrection.new(parent_instance: self, create_children: @create_children) end class PacketDuplication < ConfigClass def has_multiple_values? false end def _section :'packet-duplication' end @props={"recovery-duration-pd"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5000", "default"=>"1000", "help-string"=> "Time in ms for which PD packets can remain in the firewall"}} # Time in ms for which PD packets can remain in the firewall def recovery_duration_pd prop_get('recovery-duration-pd') end # Time in ms for which PD packets can remain in the firewall def recovery_duration_pd=(val) prop_set('recovery-duration-pd', val) end end # class PacketDuplication def packet_duplication @subclasses['packet-duplication'] ||= PacketDuplication.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "activation-threshold"=> {"node-type"=>"element", "help-string"=>"Activate when pkt loss exceeds this threshold percentage", "type"=>"rangedint", "min"=>"1", "max"=>"99", "default"=>"2"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # Activate when pkt loss exceeds this threshold percentage def activation_threshold prop_get('activation-threshold') end # Activate when pkt loss exceeds this threshold percentage def activation_threshold=(val) prop_set('activation-threshold', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanErrorCorrection def sdwan_error_correction if @create_children @subclasses['sdwan-error-correction'] ||= SdwanErrorCorrection.new(parent_instance: self, create_children: @create_children) else SdwanErrorCorrection.new(parent_instance: self) end end class Decryption < XML::ConfigClass def has_multiple_values? true end def _section :'decryption' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SslForwardProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-forward-proxy' end @props={"block-expired-certificate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is expired"}, "block-untrusted-issuer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is issued by untrusted CA"}, "block-tls13-downgrade-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to downgrade from tls1.3 if device has not enough resources"}, "restrict-cert-exts"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to restrict certificates' extensions"}, "block-unsupported-version"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssl version is not supported"}, "block-unsupported-cipher"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if ssl cipher suite is not supported"}, "block-client-cert"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if client certificate authentication is used"}, "block-if-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if device has no enough resources"}, "block-if-hsm-unavailable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if HSM is unavailable"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "auto-include-altname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to automatically append SAN to impersonating certificate if server certificate is missing SAN"}, "strip-alpn"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Strip ALPN extension in client hello"}} # whether to block sessions if server's certificate is expired def block_expired_certificate prop_get('block-expired-certificate') end # whether to block sessions if server's certificate is expired def block_expired_certificate=(val) prop_set('block-expired-certificate', val) end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer prop_get('block-untrusted-issuer') end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer=(val) prop_set('block-untrusted-issuer', val) end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource prop_get('block-tls13-downgrade-no-resource') end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource=(val) prop_set('block-tls13-downgrade-no-resource', val) end # whether to restrict certificates' extensions def restrict_cert_exts prop_get('restrict-cert-exts') end # whether to restrict certificates' extensions def restrict_cert_exts=(val) prop_set('restrict-cert-exts', val) end # whether to block sessions if ssl version is not supported def block_unsupported_version prop_get('block-unsupported-version') end # whether to block sessions if ssl version is not supported def block_unsupported_version=(val) prop_set('block-unsupported-version', val) end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher prop_get('block-unsupported-cipher') end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher=(val) prop_set('block-unsupported-cipher', val) end # whether to block sessions if client certificate authentication is used def block_client_cert prop_get('block-client-cert') end # whether to block sessions if client certificate authentication is used def block_client_cert=(val) prop_set('block-client-cert', val) end # whether to block sessions if device has no enough resources def block_if_no_resource prop_get('block-if-no-resource') end # whether to block sessions if device has no enough resources def block_if_no_resource=(val) prop_set('block-if-no-resource', val) end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable prop_get('block-if-hsm-unavailable') end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable=(val) prop_set('block-if-hsm-unavailable', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to automatically append SAN to impersonating certificate if server certificate is missing SAN def auto_include_altname prop_get('auto-include-altname') end # whether to automatically append SAN to impersonating certificate if server certificate is missing SAN def auto_include_altname=(val) prop_set('auto-include-altname', val) end # Strip ALPN extension in client hello def strip_alpn prop_get('strip-alpn') end # Strip ALPN extension in client hello def strip_alpn=(val) prop_set('strip-alpn', val) end end # class SslForwardProxy def ssl_forward_proxy @subclasses['ssl-forward-proxy'] ||= SslForwardProxy.new(parent_instance: self, create_children: @create_children) end class SslInboundProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-inbound-proxy' end @props={"block-unsupported-version"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssl version is not supported"}, "block-unsupported-cipher"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if ssl cipher suite is not supported"}, "block-if-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if device has no enough resources"}, "block-tls13-downgrade-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to downgrade from tls1.3 if device has not enough resources"}, "block-if-hsm-unavailable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if HSM is unavailable"}} # whether to block sessions if ssl version is not supported def block_unsupported_version prop_get('block-unsupported-version') end # whether to block sessions if ssl version is not supported def block_unsupported_version=(val) prop_set('block-unsupported-version', val) end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher prop_get('block-unsupported-cipher') end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher=(val) prop_set('block-unsupported-cipher', val) end # whether to block sessions if device has no enough resources def block_if_no_resource prop_get('block-if-no-resource') end # whether to block sessions if device has no enough resources def block_if_no_resource=(val) prop_set('block-if-no-resource', val) end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource prop_get('block-tls13-downgrade-no-resource') end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource=(val) prop_set('block-tls13-downgrade-no-resource', val) end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable prop_get('block-if-hsm-unavailable') end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable=(val) prop_set('block-if-hsm-unavailable', val) end end # class SslInboundProxy def ssl_inbound_proxy @subclasses['ssl-inbound-proxy'] ||= SslInboundProxy.new(parent_instance: self, create_children: @create_children) end class SslProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'ssl-protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"tls1-3", "help-string"=>"TLSv1.3"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-2", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"tls1-3", "help-string"=>"TLSv1.3"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "enc-algo-chacha20-poly1305"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm chacha20-poly1305"}, "auth-algo-md5__13"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Allow authentication MD5"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow algorithm chacha20-poly1305 def enc_algo_chacha20_poly1305 prop_get('enc-algo-chacha20-poly1305') end # Allow algorithm chacha20-poly1305 def enc_algo_chacha20_poly1305=(val) prop_set('enc-algo-chacha20-poly1305', val) end # Allow authentication MD5 def auth_algo_md5__13 prop_get('auth-algo-md5__13') end # Allow authentication MD5 def auth_algo_md5__13=(val) prop_set('auth-algo-md5__13', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class SslProtocolSettings def ssl_protocol_settings @subclasses['ssl-protocol-settings'] ||= SslProtocolSettings.new(parent_instance: self, create_children: @create_children) end class SslNoProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-no-proxy' end @props={"block-expired-certificate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is expired"}, "block-untrusted-issuer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is issued by untrusted CA"}} # whether to block sessions if server's certificate is expired def block_expired_certificate prop_get('block-expired-certificate') end # whether to block sessions if server's certificate is expired def block_expired_certificate=(val) prop_set('block-expired-certificate', val) end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer prop_get('block-untrusted-issuer') end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer=(val) prop_set('block-untrusted-issuer', val) end end # class SslNoProxy def ssl_no_proxy @subclasses['ssl-no-proxy'] ||= SslNoProxy.new(parent_instance: self, create_children: @create_children) end class SshProxy < ConfigClass def has_multiple_values? false end def _section :'ssh-proxy' end @props={"block-unsupported-version"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssh version is not supported"}, "block-unsupported-alg"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if ssh algorithm is not supported"}, "block-ssh-errors"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssh errors are encountered"}, "block-if-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if device has no enough resources"}} # whether to block sessions if ssh version is not supported def block_unsupported_version prop_get('block-unsupported-version') end # whether to block sessions if ssh version is not supported def block_unsupported_version=(val) prop_set('block-unsupported-version', val) end # whether to block sessions if ssh algorithm is not supported def block_unsupported_alg prop_get('block-unsupported-alg') end # whether to block sessions if ssh algorithm is not supported def block_unsupported_alg=(val) prop_set('block-unsupported-alg', val) end # whether to block sessions if ssh errors are encountered def block_ssh_errors prop_get('block-ssh-errors') end # whether to block sessions if ssh errors are encountered def block_ssh_errors=(val) prop_set('block-ssh-errors', val) end # whether to block sessions if device has no enough resources def block_if_no_resource prop_get('block-if-no-resource') end # whether to block sessions if device has no enough resources def block_if_no_resource=(val) prop_set('block-if-no-resource', val) end end # class SshProxy def ssh_proxy @subclasses['ssh-proxy'] ||= SshProxy.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"decrypt mirror port", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry[device-group/entry/devices/entry]/template/entry/config/devices/entry/network/interface/ethernet/entry[decrypt-mirror]/@name", "##/devices/entry[device-group/entry/devices/entry]/template/entry/config/devices/entry/network/interface/aggregate-ethernet/entry[decrypt-mirror]/@name"]}, "forwarded-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"mirror after security policy allow"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # decrypt mirror port def interface prop_get('interface') end # decrypt mirror port def interface=(val) prop_set('interface', val) end # mirror after security policy allow def forwarded_only prop_get('forwarded-only') end # mirror after security policy allow def forwarded_only=(val) prop_set('forwarded-only', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decryption def decryption if @create_children @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) else Decryption.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class ProfileGroup < XML::ConfigClass def has_multiple_values? true end def _section :'profile-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "hidden"=>"yes", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=>["#config/shared/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "hidden"=>"yes", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProfileGroup def profile_group if @create_children @subclasses['profile-group'] ||= ProfileGroup.new(parent_instance: self, create_children: @create_children) else ProfileGroup.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"tcp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "halfclose-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session half-close timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "timewait-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session time-wait timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600"}} # tcp session timeout value (in second) def timeout prop_get('timeout') end # tcp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end # tcp session half-close timeout value (in second) def halfclose_timeout prop_get('halfclose-timeout') end # tcp session half-close timeout value (in second) def halfclose_timeout=(val) prop_set('halfclose-timeout', val) end # tcp session time-wait timeout value (in second) def timewait_timeout prop_get('timewait-timeout') end # tcp session time-wait timeout value (in second) def timewait_timeout=(val) prop_set('timewait-timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"udp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "default"=>"30"}} # udp session timeout value (in second) def timeout prop_get('timeout') end # udp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class ServiceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'service-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServiceGroup def service_group if @create_children @subclasses['service-group'] ||= ServiceGroup.new(parent_instance: self, create_children: @create_children) else ServiceGroup.new(parent_instance: self) end end class Reports < XML::ConfigClass def has_multiple_values? true end def _section :'reports' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Appstat < ConfigClass def has_multiple_values? false end def _section :'appstat' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"name"}, {"value"=>"risk"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-name"}, {"value"=>"category-of-name"}, {"value"=>"risk-of-name"}, {"value"=>"container-of-name"}, {"value"=>"technology-of-name"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"nbytes"}, {"value"=>"nsess"}, {"value"=>"npkts"}, {"value"=>"nthreats"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"name"}, {"value"=>"risk"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-name"}, {"value"=>"category-of-name"}, {"value"=>"risk-of-name"}, {"value"=>"container-of-name"}, {"value"=>"technology-of-name"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"nbytes"}, {"value"=>"nsess"}, {"value"=>"npkts"}, {"value"=>"nthreats"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Appstat def appstat @subclasses['appstat'] ||= Appstat.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"ec_curve"}, {"value"=>"err_index"}, {"value"=>"root_status"}, {"value"=>"proxy_type"}, {"value"=>"policy_name"}, {"value"=>"cn"}, {"value"=>"issuer_cn"}, {"value"=>"root_cn"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"ec_curve"}, {"value"=>"err_index"}, {"value"=>"root_status"}, {"value"=>"proxy_type"}, {"value"=>"policy_name"}, {"value"=>"cn"}, {"value"=>"issuer_cn"}, {"value"=>"root_cn"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Desum < ConfigClass def has_multiple_values? false end def _section :'desum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"vsys"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"err_index"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"outbound_if"}, {"value"=>"inbound_if"}, {"value"=>"rule"}, {"value"=>"dport"}, {"value"=>"sport"}, {"value"=>"proto"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"vsys"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"err_index"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"outbound_if"}, {"value"=>"inbound_if"}, {"value"=>"rule"}, {"value"=>"dport"}, {"value"=>"sport"}, {"value"=>"proto"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Desum def desum @subclasses['desum'] ||= Desum.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"threatid"}, {"value"=>"category"}, {"value"=>"severity"}, {"value"=>"direction"}, {"value"=>"http_method"}, {"value"=>"nssai_sst"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"hostid"}, {"value"=>"partial_hash"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"misc"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"subtype"}, {"value"=>"transaction"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"users"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"threatid"}, {"value"=>"category"}, {"value"=>"severity"}, {"value"=>"direction"}, {"value"=>"http_method"}, {"value"=>"nssai_sst"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"hostid"}, {"value"=>"partial_hash"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"misc"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"subtype"}, {"value"=>"transaction"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"users"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"http_headers"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"contenttype"}, {"value"=>"user_agent"}, {"value"=>"xff"}, {"value"=>"referer"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"url", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"http_method"}, {"value"=>"url_category_list"}, {"value"=>"xff_ip"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"http_headers"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"contenttype"}, {"value"=>"user_agent"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"url", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"http_method"}, {"value"=>"url_category_list"}, {"value"=>"xff_ip"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"non-std-dport"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"filetype"}, {"value"=>"sender"}, {"value"=>"subject"}, {"value"=>"recipient"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"filedigest"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"filetype"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"filedigest"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"subtype"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"threatid"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"data-type", "internal"=>"yes"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"filedigest"}, {"value"=>"filetype"}, {"value"=>"reportid"}, {"value"=>"reason"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"subtype"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"threatid"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"data-type", "internal"=>"yes"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Thsum < ConfigClass def has_multiple_values? false end def _section :'thsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"threatid"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"xff_ip"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"severity"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"category"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"direction"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"subtype"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sessions"}, {"value"=>"count"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"threatid"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"xff_ip"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"severity"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"category"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"direction"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"subtype"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"sessions"}, {"value"=>"count"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Thsum def thsum @subclasses['thsum'] ||= Thsum.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"category"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"nssai_sst"}, {"value"=>"nssai_sd"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"dynusergroup_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"session_owner"}, {"value"=>"policy_id"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"decrypt-mirror"}, {"value"=>"threat-type"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"sym-return"}, {"value"=>"sessionid"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"nunique-of-users"}, {"value"=>"elapsed"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"category"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"nssai_sst"}, {"value"=>"nssai_sd"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"dynusergroup_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"session_owner"}, {"value"=>"policy_id"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"decrypt-mirror"}, {"value"=>"threat-type"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"sym-return"}, {"value"=>"sessionid"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"nunique-of-users"}, {"value"=>"elapsed"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Urlsum < ConfigClass def has_multiple_values? false end def _section :'urlsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"url_domain"}, {"value"=>"user_agent"}, {"value"=>"http_method"}, {"value"=>"http2_connection"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"rule_uuid"}, {"value"=>"xff_ip"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"url_category_list"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"url_domain"}, {"value"=>"user_agent"}, {"value"=>"http_method"}, {"value"=>"http2_connection"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"rule_uuid"}, {"value"=>"xff_ip"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"url_category_list"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Urlsum def urlsum @subclasses['urlsum'] ||= Urlsum.new(parent_instance: self, create_children: @create_children) end class Trsum < ConfigClass def has_multiple_values? false end def _section :'trsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"xff_ip"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"category"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"assoc_id"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"s_decrypted"}, {"value"=>"s_encrypted"}, {"value"=>"hostid"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"standard-ports-of-app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"bytes"}, {"value"=>"sessions"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"nthreats"}, {"value"=>"nftrans"}, {"value"=>"ndpmatches"}, {"value"=>"nurlcount"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"ncontent"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"xff_ip"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"category"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"assoc_id"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"s_decrypted"}, {"value"=>"s_encrypted"}, {"value"=>"hostid"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"standard-ports-of-app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"bytes"}, {"value"=>"sessions"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"nthreats"}, {"value"=>"nftrans"}, {"value"=>"ndpmatches"}, {"value"=>"nurlcount"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"ncontent"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Trsum def trsum @subclasses['trsum'] ||= Trsum.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"end_ip_addr"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"cell_id"}, {"value"=>"event_code"}, {"value"=>"msg_type"}, {"value"=>"area_code"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"gtp_interface"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"imei"}, {"value"=>"imsi"}, {"value"=>"sessionid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"end_ip_addr"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"cell_id"}, {"value"=>"event_code"}, {"value"=>"msg_type"}, {"value"=>"area_code"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"gtp_interface"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"imei"}, {"value"=>"imsi"}, {"value"=>"sessionid"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Gtpsum < ConfigClass def has_multiple_values? false end def _section :'gtpsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"action"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"msg_type"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"imei"}, {"value"=>"imsi"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"action"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"msg_type"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"imei"}, {"value"=>"imsi"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Gtpsum def gtpsum @subclasses['gtpsum'] ||= Gtpsum.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"sctp_event_code"}, {"value"=>"verif_tag_1"}, {"value"=>"verif_tag_2"}, {"value"=>"sctp_cause_code"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"diam_avp_code"}, {"value"=>"stream_id"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sccp_calling_gt"}, {"value"=>"sctp_filter"}, {"value"=>"assoc_end_reason"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"sessionid"}, {"value"=>"assoc_id"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"sctp_event_code"}, {"value"=>"verif_tag_1"}, {"value"=>"verif_tag_2"}, {"value"=>"sctp_cause_code"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"diam_avp_code"}, {"value"=>"stream_id"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sccp_calling_gt"}, {"value"=>"sctp_filter"}, {"value"=>"assoc_end_reason"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"sessionid"}, {"value"=>"assoc_id"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Sctpsum < ConfigClass def has_multiple_values? false end def _section :'sctpsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"action"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sctp_filter"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"action"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sctp_filter"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"repeatcnt"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Sctpsum def sctpsum @subclasses['sctpsum'] ||= Sctpsum.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"sym-return"}, {"value"=>"decrypt-mirror"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sessionid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"max_encap"}, {"value"=>"unknown_proto"}, {"value"=>"strict_check"}, {"value"=>"tunnel_fragment"}, {"value"=>"sessions_created"}, {"value"=>"sessions_closed"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sessionid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"max_encap"}, {"value"=>"unknown_proto"}, {"value"=>"strict_check"}, {"value"=>"tunnel_fragment"}, {"value"=>"sessions_created"}, {"value"=>"sessions_closed"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Tunnelsum < ConfigClass def has_multiple_values? false end def _section :'tunnelsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"standard-ports-of-app"}, {"value"=>"dst"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"src"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dst"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"src"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Tunnelsum def tunnelsum @subclasses['tunnelsum'] ||= Tunnelsum.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"datasourcename"}, {"value"=>"beginport"}, {"value"=>"endport"}, {"value"=>"datasource"}, {"value"=>"datasourcetype"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}, {"value"=>"factorno"}, {"value"=>"tag_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subtype"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"datasourcename"}, {"value"=>"beginport"}, {"value"=>"endport"}, {"value"=>"datasource"}, {"value"=>"datasourcetype"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}, {"value"=>"factorno"}, {"value"=>"tag_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subtype"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"normalize_user"}, {"value"=>"object"}, {"value"=>"authpolicy"}, {"value"=>"authid"}, {"value"=>"vendor"}, {"value"=>"clienttype"}, {"value"=>"event"}, {"value"=>"factorno"}, {"value"=>"authproto"}, {"value"=>"rule_uuid"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"normalize_user"}, {"value"=>"object"}, {"value"=>"authpolicy"}, {"value"=>"authid"}, {"value"=>"vendor"}, {"value"=>"clienttype"}, {"value"=>"event"}, {"value"=>"factorno"}, {"value"=>"authproto"}, {"value"=>"rule_uuid"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"serverprofile"}, {"value"=>"desc"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"time_generated"}, {"value"=>"vendor"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"tag_name"}, {"value"=>"event_id"}, {"value"=>"datasourcename"}, {"value"=>"datasource_type"}, {"value"=>"datasource_subtype"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"tag_name"}, {"value"=>"event_id"}, {"value"=>"datasourcename"}, {"value"=>"datasource_type"}, {"value"=>"datasource_subtype"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"time_generated"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Hipmatch__60 < ConfigClass def has_multiple_values? false end def _section :'hipmatch__60' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}]}, "last-match-by"=>{"node-type"=>"element", "type"=>"enum", "optional"=>"yes"}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end def last_match_by prop_get('last-match-by') end def last_match_by=(val) prop_set('last-match-by', val) end end # class Hipmatch__60 def hipmatch__60 @subclasses['hipmatch__60'] ||= Hipmatch__60.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class PanoramaDecryption < ConfigClass def has_multiple_values? false end def _section :'panorama-decryption' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"ec_curve"}, {"value"=>"err_index"}, {"value"=>"root_status"}, {"value"=>"proxy_type"}, {"value"=>"policy_name"}, {"value"=>"cn"}, {"value"=>"issuer_cn"}, {"value"=>"root_cn"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"ec_curve"}, {"value"=>"err_index"}, {"value"=>"root_status"}, {"value"=>"proxy_type"}, {"value"=>"policy_name"}, {"value"=>"cn"}, {"value"=>"issuer_cn"}, {"value"=>"root_cn"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaDecryption def panorama_decryption @subclasses['panorama-decryption'] ||= PanoramaDecryption.new(parent_instance: self, create_children: @create_children) end class PanoramaDesum < ConfigClass def has_multiple_values? false end def _section :'panorama-desum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"vsys"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"err_index"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"vsys"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"err_index"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaDesum def panorama_desum @subclasses['panorama-desum'] ||= PanoramaDesum.new(parent_instance: self, create_children: @create_children) end class PanoramaThreat < ConfigClass def has_multiple_values? false end def _section :'panorama-threat' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"threatid"}, {"value"=>"category"}, {"value"=>"severity"}, {"value"=>"direction"}, {"value"=>"http_method"}, {"value"=>"nssai_sst"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"hostid"}, {"value"=>"partial_hash"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"misc"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"subtype"}, {"value"=>"transaction"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"users"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"threatid"}, {"value"=>"category"}, {"value"=>"severity"}, {"value"=>"direction"}, {"value"=>"http_method"}, {"value"=>"nssai_sst"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"hostid"}, {"value"=>"partial_hash"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"misc"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"subtype"}, {"value"=>"transaction"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"users"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaThreat def panorama_threat @subclasses['panorama-threat'] ||= PanoramaThreat.new(parent_instance: self, create_children: @create_children) end class PanoramaUrl < ConfigClass def has_multiple_values? false end def _section :'panorama-url' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"action"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"http_headers"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"contenttype"}, {"value"=>"user_agent"}, {"value"=>"xff"}, {"value"=>"referer"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"url", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"http_method"}, {"value"=>"url_category_list"}, {"value"=>"xff_ip"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"http_headers"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"contenttype"}, {"value"=>"serial"}, {"value"=>"user_agent"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"url", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"http_method"}, {"value"=>"url_category_list"}, {"value"=>"xff_ip"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaUrl def panorama_url @subclasses['panorama-url'] ||= PanoramaUrl.new(parent_instance: self, create_children: @create_children) end class PanoramaWildfire < ConfigClass def has_multiple_values? false end def _section :'panorama-wildfire' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"non-std-dport"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"filetype"}, {"value"=>"sender"}, {"value"=>"subject"}, {"value"=>"recipient"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"filedigest"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"filetype"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"filedigest"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaWildfire def panorama_wildfire @subclasses['panorama-wildfire'] ||= PanoramaWildfire.new(parent_instance: self, create_children: @create_children) end class PanoramaData < ConfigClass def has_multiple_values? false end def _section :'panorama-data' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"subtype"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"threatid"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"data-type", "internal"=>"yes"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"filedigest"}, {"value"=>"filetype"}, {"value"=>"reportid"}, {"value"=>"reason"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"subtype"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"threatid"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"data-type", "internal"=>"yes"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaData def panorama_data @subclasses['panorama-data'] ||= PanoramaData.new(parent_instance: self, create_children: @create_children) end class PanoramaThsum < ConfigClass def has_multiple_values? false end def _section :'panorama-thsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"threatid"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"xff_ip"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"severity"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"category"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"direction"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"subtype"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sessions"}, {"value"=>"count"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"threatid"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"xff_ip"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"severity"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"category"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"direction"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"subtype"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"sessions"}, {"value"=>"count"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaThsum def panorama_thsum @subclasses['panorama-thsum'] ||= PanoramaThsum.new(parent_instance: self, create_children: @create_children) end class PanoramaTraffic < ConfigClass def has_multiple_values? false end def _section :'panorama-traffic' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"category"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"nssai_sst"}, {"value"=>"nssai_sd"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"dynusergroup_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"session_owner"}, {"value"=>"policy_id"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"decrypt-mirror"}, {"value"=>"threat-type"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"sym-return"}, {"value"=>"sessionid"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"nunique-of-users"}, {"value"=>"elapsed"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"category"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"nssai_sst"}, {"value"=>"nssai_sd"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"dynusergroup_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"session_owner"}, {"value"=>"policy_id"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"decrypt-mirror"}, {"value"=>"threat-type"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"sym-return"}, {"value"=>"sessionid"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"nunique-of-users"}, {"value"=>"elapsed"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTraffic def panorama_traffic @subclasses['panorama-traffic'] ||= PanoramaTraffic.new(parent_instance: self, create_children: @create_children) end class PanoramaUrlsum < ConfigClass def has_multiple_values? false end def _section :'panorama-urlsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"url_domain"}, {"value"=>"user_agent"}, {"value"=>"http_method"}, {"value"=>"http2_connection"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"rule_uuid"}, {"value"=>"xff_ip"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"url_category_list"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"url_domain"}, {"value"=>"user_agent"}, {"value"=>"http_method"}, {"value"=>"http2_connection"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"rule_uuid"}, {"value"=>"xff_ip"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"url_category_list"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaUrlsum def panorama_urlsum @subclasses['panorama-urlsum'] ||= PanoramaUrlsum.new(parent_instance: self, create_children: @create_children) end class PanoramaTrsum < ConfigClass def has_multiple_values? false end def _section :'panorama-trsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"xff_ip"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"category"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"assoc_id"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"s_decrypted"}, {"value"=>"s_encrypted"}, {"value"=>"hostid"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"standard-ports-of-app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"bytes"}, {"value"=>"sessions"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"nthreats"}, {"value"=>"nftrans"}, {"value"=>"ndpmatches"}, {"value"=>"nurlcount"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"ncontent"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"xff_ip"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"category"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"assoc_id"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"s_decrypted"}, {"value"=>"s_encrypted"}, {"value"=>"hostid"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"standard-ports-of-app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"bytes"}, {"value"=>"sessions"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"nthreats"}, {"value"=>"nftrans"}, {"value"=>"ndpmatches"}, {"value"=>"nurlcount"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"ncontent"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTrsum def panorama_trsum @subclasses['panorama-trsum'] ||= PanoramaTrsum.new(parent_instance: self, create_children: @create_children) end class PanoramaGtp < ConfigClass def has_multiple_values? false end def _section :'panorama-gtp' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"end_ip_addr"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"cell_id"}, {"value"=>"event_code"}, {"value"=>"msg_type"}, {"value"=>"area_code"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"gtp_interface"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"imei"}, {"value"=>"imsi"}, {"value"=>"sessionid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"end_ip_addr"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"cell_id"}, {"value"=>"event_code"}, {"value"=>"msg_type"}, {"value"=>"area_code"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"gtp_interface"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"imei"}, {"value"=>"imsi"}, {"value"=>"sessionid"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaGtp def panorama_gtp @subclasses['panorama-gtp'] ||= PanoramaGtp.new(parent_instance: self, create_children: @create_children) end class PanoramaGtpsum < ConfigClass def has_multiple_values? false end def _section :'panorama-gtpsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"action"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"msg_type"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"imei"}, {"value"=>"imsi"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"action"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"msg_type"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"imei"}, {"value"=>"imsi"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaGtpsum def panorama_gtpsum @subclasses['panorama-gtpsum'] ||= PanoramaGtpsum.new(parent_instance: self, create_children: @create_children) end class PanoramaSctp < ConfigClass def has_multiple_values? false end def _section :'panorama-sctp' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"sctp_event_code"}, {"value"=>"verif_tag_1"}, {"value"=>"verif_tag_2"}, {"value"=>"sctp_cause_code"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"diam_avp_code"}, {"value"=>"stream_id"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sccp_calling_gt"}, {"value"=>"sctp_filter"}, {"value"=>"assoc_end_reason"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"sessionid"}, {"value"=>"assoc_id"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"sctp_event_code"}, {"value"=>"verif_tag_1"}, {"value"=>"verif_tag_2"}, {"value"=>"sctp_cause_code"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"diam_avp_code"}, {"value"=>"stream_id"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sccp_calling_gt"}, {"value"=>"sctp_filter"}, {"value"=>"assoc_end_reason"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"sessionid"}, {"value"=>"assoc_id"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaSctp def panorama_sctp @subclasses['panorama-sctp'] ||= PanoramaSctp.new(parent_instance: self, create_children: @create_children) end class PanoramaSctpsum < ConfigClass def has_multiple_values? false end def _section :'panorama-sctpsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"action"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sctp_filter"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"action"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sctp_filter"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"repeatcnt"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaSctpsum def panorama_sctpsum @subclasses['panorama-sctpsum'] ||= PanoramaSctpsum.new(parent_instance: self, create_children: @create_children) end class PanoramaTunnel < ConfigClass def has_multiple_values? false end def _section :'panorama-tunnel' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"sym-return"}, {"value"=>"decrypt-mirror"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sessionid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"max_encap"}, {"value"=>"unknown_proto"}, {"value"=>"strict_check"}, {"value"=>"tunnel_fragment"}, {"value"=>"sessions_created"}, {"value"=>"sessions_closed"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sessionid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"max_encap"}, {"value"=>"unknown_proto"}, {"value"=>"strict_check"}, {"value"=>"tunnel_fragment"}, {"value"=>"sessions_created"}, {"value"=>"sessions_closed"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTunnel def panorama_tunnel @subclasses['panorama-tunnel'] ||= PanoramaTunnel.new(parent_instance: self, create_children: @create_children) end class PanoramaTunnelsum < ConfigClass def has_multiple_values? false end def _section :'panorama-tunnelsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"standard-ports-of-app"}, {"value"=>"dst"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"src"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dst"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"src"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTunnelsum def panorama_tunnelsum @subclasses['panorama-tunnelsum'] ||= PanoramaTunnelsum.new(parent_instance: self, create_children: @create_children) end class PanoramaUserid < ConfigClass def has_multiple_values? false end def _section :'panorama-userid' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"datasourcename"}, {"value"=>"beginport"}, {"value"=>"endport"}, {"value"=>"datasource"}, {"value"=>"datasourcetype"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}, {"value"=>"factorno"}, {"value"=>"tag_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subtype"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"datasourcename"}, {"value"=>"beginport"}, {"value"=>"endport"}, {"value"=>"datasource"}, {"value"=>"datasourcetype"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}, {"value"=>"factorno"}, {"value"=>"tag_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subtype"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaUserid def panorama_userid @subclasses['panorama-userid'] ||= PanoramaUserid.new(parent_instance: self, create_children: @create_children) end class PanoramaAuth < ConfigClass def has_multiple_values? false end def _section :'panorama-auth' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"normalize_user"}, {"value"=>"object"}, {"value"=>"authpolicy"}, {"value"=>"authid"}, {"value"=>"vendor"}, {"value"=>"clienttype"}, {"value"=>"event"}, {"value"=>"factorno"}, {"value"=>"authproto"}, {"value"=>"rule_uuid"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"normalize_user"}, {"value"=>"object"}, {"value"=>"authpolicy"}, {"value"=>"authid"}, {"value"=>"vendor"}, {"value"=>"clienttype"}, {"value"=>"event"}, {"value"=>"factorno"}, {"value"=>"authproto"}, {"value"=>"rule_uuid"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"serverprofile"}, {"value"=>"desc"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"time_generated"}, {"value"=>"vendor"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaAuth def panorama_auth @subclasses['panorama-auth'] ||= PanoramaAuth.new(parent_instance: self, create_children: @create_children) end class PanoramaIptag < ConfigClass def has_multiple_values? false end def _section :'panorama-iptag' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"tag_name"}, {"value"=>"event_id"}, {"value"=>"datasourcename"}, {"value"=>"datasource_type"}, {"value"=>"datasource_subtype"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"tag_name"}, {"value"=>"event_id"}, {"value"=>"datasourcename"}, {"value"=>"datasource_type"}, {"value"=>"datasource_subtype"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"time_generated"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaIptag def panorama_iptag @subclasses['panorama-iptag'] ||= PanoramaIptag.new(parent_instance: self, create_children: @create_children) end class PanoramaHipmatch__113 < ConfigClass def has_multiple_values? false end def _section :'panorama-hipmatch__113' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}]}, "last-match-by"=>{"node-type"=>"element", "type"=>"enum", "optional"=>"yes"}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end def last_match_by prop_get('last-match-by') end def last_match_by=(val) prop_set('last-match-by', val) end end # class PanoramaHipmatch__113 def panorama_hipmatch__113 @subclasses['panorama-hipmatch__113'] ||= PanoramaHipmatch__113.new(parent_instance: self, create_children: @create_children) end class PanoramaGlobalprotect < ConfigClass def has_multiple_values? false end def _section :'panorama-globalprotect' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaGlobalprotect def panorama_globalprotect @subclasses['panorama-globalprotect'] ||= PanoramaGlobalprotect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "query"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "caption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255"}, "frequency"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"daily"}]}, "start-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1]) ([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=>"Start Time e.g. 2008/01/01 09:00:00"}, "end-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1]) ([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=>"End Time e.g. 2008/12/31 11:59:59"}, "period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"last-15-minutes"}, {"value"=>"last-hour"}, {"value"=>"last-6-hrs"}, {"value"=>"last-12-hrs"}, {"value"=>"last-24-hrs"}, {"value"=>"last-calendar-day"}, {"value"=>"last-7-days"}, {"value"=>"last-7-calendar-days"}, {"value"=>"last-calendar-week"}, {"value"=>"last-30-days"}, {"value"=>"last-30-calendar-days"}, {"value"=>"last-60-days"}, {"value"=>"last-60-calendar-days"}, {"value"=>"last-90-days"}, {"value"=>"last-90-calendar-days"}, {"value"=>"last-calendar-month"}]}, "topn"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"10000", "default"=>"10"}, "topm"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"50", "default"=>"10"}, "include-others"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "internal"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end def query prop_get('query') end def query=(val) prop_set('query', val) end def caption prop_get('caption') end def caption=(val) prop_set('caption', val) end def frequency prop_get('frequency') end def frequency=(val) prop_set('frequency', val) end # Start Time e.g. 2008/01/01 09:00:00 def start_time prop_get('start-time') end # Start Time e.g. 2008/01/01 09:00:00 def start_time=(val) prop_set('start-time', val) end # End Time e.g. 2008/12/31 11:59:59 def end_time prop_get('end-time') end # End Time e.g. 2008/12/31 11:59:59 def end_time=(val) prop_set('end-time', val) end def period prop_get('period') end def period=(val) prop_set('period', val) end def topn prop_get('topn') end def topn=(val) prop_set('topn', val) end def topm prop_get('topm') end def topm=(val) prop_set('topm', val) end def include_others prop_get('include-others') end def include_others=(val) prop_set('include-others', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Reports def reports if @create_children @subclasses['reports'] ||= Reports.new(parent_instance: self, create_children: @create_children) else Reports.new(parent_instance: self) end end class ReportGroup < XML::ConfigClass def has_multiple_values? true end def _section :'report-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class All < XML::ConfigClass def has_multiple_values? true end def _section :'all' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end class UserGroups < XML::ConfigClass def has_multiple_values? true end def _section :'user-groups' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "max-count"=>"25"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserGroups def user_groups if @create_children @subclasses['user-groups'] ||= UserGroups.new(parent_instance: self, create_children: @create_children) else UserGroups.new(parent_instance: self) end end @props={"include-user-groups-info"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def include_user_groups_info prop_get('include-user-groups-info') end def include_user_groups_info=(val) prop_set('include-user-groups-info', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class All def all if @create_children @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) else All.new(parent_instance: self) end end class SelectedZone < XML::ConfigClass def has_multiple_values? true end def _section :'selected-zone' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end class UserGroups < XML::ConfigClass def has_multiple_values? true end def _section :'user-groups' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "max-count"=>"25"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserGroups def user_groups if @create_children @subclasses['user-groups'] ||= UserGroups.new(parent_instance: self, create_children: @create_children) else UserGroups.new(parent_instance: self) end end @props={"include-user-groups-info"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "zone"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/template/entry/config/devices/entry/vsys/entry/zone/entry/@name"]}} def include_user_groups_info prop_get('include-user-groups-info') end def include_user_groups_info=(val) prop_set('include-user-groups-info', val) end def zone prop_get('zone') end def zone=(val) prop_set('zone', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelectedZone def selected_zone if @create_children @subclasses['selected-zone'] ||= SelectedZone.new(parent_instance: self, create_children: @create_children) else SelectedZone.new(parent_instance: self) end end class SelectedUserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'selected-user-group' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end @props={"user-group"=> {"node-type"=>"element", "help-string"=>"user-group", "type"=>"string", "maxlen"=>"63"}} # user-group def user_group prop_get('user-group') end # user-group def user_group=(val) prop_set('user-group', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelectedUserGroup def selected_user_group if @create_children @subclasses['selected-user-group'] ||= SelectedUserGroup.new(parent_instance: self, create_children: @create_children) else SelectedUserGroup.new(parent_instance: self) end end class Variable < XML::ConfigClass def has_multiple_values? true end def _section :'variable' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "value"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "complete-handler"=>"pan-rpt-grp-saas-completer", "autocomplete"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Variable def variable if @create_children @subclasses['variable'] ||= Variable.new(parent_instance: self, create_children: @create_children) else Variable.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "title-page"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def title_page prop_get('title-page') end def title_page=(val) prop_set('title-page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ReportGroup def report_group if @create_children @subclasses['report-group'] ||= ReportGroup.new(parent_instance: self, create_children: @create_children) else ReportGroup.new(parent_instance: self) end end class PdfSummaryReport < XML::ConfigClass def has_multiple_values? true end def _section :'pdf-summary-report' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Header < ConfigClass def has_multiple_values? false end def _section :'header' end @props={"caption"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Caption for the layout"}} # Caption for the layout def caption prop_get('caption') end # Caption for the layout def caption=(val) prop_set('caption', val) end end # class Header def header @subclasses['header'] ||= Header.new(parent_instance: self, create_children: @create_children) end class Footer < ConfigClass def has_multiple_values? false end def _section :'footer' end @props={"note"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"static string to be printed as a note"}} # static string to be printed as a note def note prop_get('note') end # static string to be printed as a note def note=(val) prop_set('note', val) end end # class Footer def footer @subclasses['footer'] ||= Footer.new(parent_instance: self, create_children: @create_children) end class PredefinedWidget < XML::ConfigClass def has_multiple_values? true end def _section :'predefined-widget' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/reports/entry/@name", "string('top-technology-categories')", "string('hruser-top-applications')", "string('hruser-top-threats')", "string('hruser-top-url-categories')"]}, "chart-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"table", "enum"=> [{"value"=>"pie"}, {"value"=>"line"}, {"value"=>"bar"}, {"value"=>"table"}]}, "row"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"6"}, "column"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def chart_type prop_get('chart-type') end def chart_type=(val) prop_set('chart-type', val) end def row prop_get('row') end def row=(val) prop_set('row', val) end def column prop_get('column') end def column=(val) prop_set('column', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PredefinedWidget def predefined_widget if @create_children @subclasses['predefined-widget'] ||= PredefinedWidget.new(parent_instance: self, create_children: @create_children) else PredefinedWidget.new(parent_instance: self) end end class CustomWidget < XML::ConfigClass def has_multiple_values? true end def _section :'custom-widget' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/shared/reports/entry/@name"]}, "chart-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"table", "enum"=> [{"value"=>"pie"}, {"value"=>"line"}, {"value"=>"bar"}, {"value"=>"table"}]}, "row"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"6"}, "column"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def chart_type prop_get('chart-type') end def chart_type=(val) prop_set('chart-type', val) end def row prop_get('row') end def row=(val) prop_set('row', val) end def column prop_get('column') end def column=(val) prop_set('column', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CustomWidget def custom_widget if @create_children @subclasses['custom-widget'] ||= CustomWidget.new(parent_instance: self, create_children: @create_children) else CustomWidget.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PdfSummaryReport def pdf_summary_report if @create_children @subclasses['pdf-summary-report'] ||= PdfSummaryReport.new(parent_instance: self, create_children: @create_children) else PdfSummaryReport.new(parent_instance: self) end end class EmailScheduler < XML::ConfigClass def has_multiple_values? true end def _section :'email-scheduler' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Recurring < XML::ConfigClass def has_multiple_values? true end def _section :'recurring' end class Disabled < ConfigClass def has_multiple_values? false end def _section :'disabled' end @props={} end # class Disabled def disabled @subclasses['disabled'] ||= Disabled.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={} end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end @props={"weekly"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"Once a week", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "monthly"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31", "help-string"=>"Once a month"}} # Once a week def weekly prop_get('weekly') end # Once a week def weekly=(val) prop_set('weekly', val) end # Once a month def monthly prop_get('monthly') end # Once a month def monthly=(val) prop_set('monthly', val) end end # class Recurring def recurring if @create_children @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) else Recurring.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "report-group"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=>["#config/shared/report-group/entry/@name"]}, "email-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/email/entry/@name", "#config/panorama/log-settings/email/entry/@name"]}, "recipient-emails"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"512", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def report_group prop_get('report-group') end def report_group=(val) prop_set('report-group', val) end def email_profile prop_get('email-profile') end def email_profile=(val) prop_set('email-profile', val) end def recipient_emails prop_get('recipient-emails') end def recipient_emails=(val) prop_set('recipient-emails', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class EmailScheduler def email_scheduler if @create_children @subclasses['email-scheduler'] ||= EmailScheduler.new(parent_instance: self, create_children: @create_children) else EmailScheduler.new(parent_instance: self) end end class Schedule < XML::ConfigClass def has_multiple_values? true end def _section :'schedule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScheduleType < XML::ConfigClass def has_multiple_values? true end def _section :'schedule-type' end class Recurring < XML::ConfigClass def has_multiple_values? true end def _section :'recurring' end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Sunday < XML::ConfigClass def has_multiple_values? true end def _section :'sunday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Sunday def sunday if @create_children @subclasses['sunday'] ||= Sunday.new(parent_instance: self, create_children: @create_children) else Sunday.new(parent_instance: self) end end class Monday < XML::ConfigClass def has_multiple_values? true end def _section :'monday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Monday def monday if @create_children @subclasses['monday'] ||= Monday.new(parent_instance: self, create_children: @create_children) else Monday.new(parent_instance: self) end end class Tuesday < XML::ConfigClass def has_multiple_values? true end def _section :'tuesday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Tuesday def tuesday if @create_children @subclasses['tuesday'] ||= Tuesday.new(parent_instance: self, create_children: @create_children) else Tuesday.new(parent_instance: self) end end class Wednesday < XML::ConfigClass def has_multiple_values? true end def _section :'wednesday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Wednesday def wednesday if @create_children @subclasses['wednesday'] ||= Wednesday.new(parent_instance: self, create_children: @create_children) else Wednesday.new(parent_instance: self) end end class Thursday < XML::ConfigClass def has_multiple_values? true end def _section :'thursday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Thursday def thursday if @create_children @subclasses['thursday'] ||= Thursday.new(parent_instance: self, create_children: @create_children) else Thursday.new(parent_instance: self) end end class Friday < XML::ConfigClass def has_multiple_values? true end def _section :'friday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Friday def friday if @create_children @subclasses['friday'] ||= Friday.new(parent_instance: self, create_children: @create_children) else Friday.new(parent_instance: self) end end class Saturday < XML::ConfigClass def has_multiple_values? true end def _section :'saturday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Saturday def saturday if @create_children @subclasses['saturday'] ||= Saturday.new(parent_instance: self, create_children: @create_children) else Saturday.new(parent_instance: self) end end @props={} end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Daily < XML::ConfigClass def has_multiple_values? true end def _section :'daily' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Daily def daily if @create_children @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) else Daily.new(parent_instance: self) end end @props={} end # class Recurring def recurring if @create_children @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) else Recurring.new(parent_instance: self) end end class NonRecurring < XML::ConfigClass def has_multiple_values? true end def _section :'non-recurring' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59)", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9])-[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"33", "maxlen"=>"33"}} # Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59) def member prop_get('member') end # Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59) def member=(val) prop_set('member', val) end end # class NonRecurring def non_recurring if @create_children @subclasses['non-recurring'] ||= NonRecurring.new(parent_instance: self, create_children: @create_children) else NonRecurring.new(parent_instance: self) end end @props={} end # class ScheduleType def schedule_type if @create_children @subclasses['schedule-type'] ||= ScheduleType.new(parent_instance: self, create_children: @create_children) else ScheduleType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Schedule def schedule if @create_children @subclasses['schedule'] ||= Schedule.new(parent_instance: self, create_children: @create_children) else Schedule.new(parent_instance: self) end end class ApplicationStatus < XML::ConfigClass def has_multiple_values? true end def _section :'application-status' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name", "##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "@status"=> {"node-type"=>"attr-req", "type"=>"enum", "enum"=>[{"value"=>"enabled"}, {"value"=>"disabled"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def status prop_get('@status') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationStatus def application_status if @create_children @subclasses['application-status'] ||= ApplicationStatus.new(parent_instance: self, create_children: @create_children) else ApplicationStatus.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Default < XML::ConfigClass def has_multiple_values? true end def _section :'default' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic)"}} # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member prop_get('member') end # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member=(val) prop_set('member', val) end end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class IdentByIcmpType < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmpType def ident_by_icmp_type @subclasses['ident-by-icmp-type'] ||= IdentByIcmpType.new(parent_instance: self, create_children: @create_children) end class IdentByIcmp6Type < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp6-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmp6Type def ident_by_icmp6_type @subclasses['ident-by-icmp6-type'] ||= IdentByIcmp6Type.new(parent_instance: self, create_children: @create_children) end @props={"ident-by-ip-protocol"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def ident_by_ip_protocol prop_get('ident-by-ip-protocol') end def ident_by_ip_protocol=(val) prop_set('ident-by-ip-protocol', val) end end # class Default def default if @create_children @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) else Default.new(parent_instance: self) end end class Signature < XML::ConfigClass def has_multiple_values? true end def _section :'signature' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Operator < XML::ConfigClass def has_multiple_values? true end def _section :'operator' end class PatternMatch < ConfigClass def has_multiple_values? false end def _section :'pattern-match' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry/@name[.!='tcp-context-free' and .!='udp-context-free']"]}, "pattern"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def pattern prop_get('pattern') end def pattern=(val) prop_set('pattern', val) end end # class PatternMatch def pattern_match @subclasses['pattern-match'] ||= PatternMatch.new(parent_instance: self, create_children: @create_children) end class GreaterThan < ConfigClass def has_multiple_values? false end def _section :'greater-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/appid-decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class GreaterThan def greater_than @subclasses['greater-than'] ||= GreaterThan.new(parent_instance: self, create_children: @create_children) end class LessThan < ConfigClass def has_multiple_values? false end def _section :'less-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/appid-decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class LessThan def less_than @subclasses['less-than'] ||= LessThan.new(parent_instance: self, create_children: @create_children) end class EqualTo < ConfigClass def has_multiple_values? false end def _section :'equal-to' end @props={"context"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["##/predefined/appid-decoder-fields/fields/value/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=> [{"value"=>"unknown-req-tcp"}, {"value"=>"unknown-rsp-tcp"}, {"value"=>"unknown-req-udp"}, {"value"=>"unknown-rsp-udp"}]}}, "position"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/app-unknown-positions/entry/@name"]}, "mask"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[0][xX][0-9A-Fa-f]{8}$", "maxlen"=>"10", "help-string"=>"4-byte hex value", "optional"=>"yes"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"10"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def position prop_get('position') end def position=(val) prop_set('position', val) end # 4-byte hex value def mask prop_get('mask') end # 4-byte hex value def mask=(val) prop_set('mask', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class EqualTo def equal_to @subclasses['equal-to'] ||= EqualTo.new(parent_instance: self, create_children: @create_children) end @props={} end # class Operator def operator if @create_children @subclasses['operator'] ||= Operator.new(parent_instance: self, create_children: @create_children) else Operator.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "scope"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"protocol-data-unit", "enum"=> [{"value"=>"protocol-data-unit", "help-string"=>"transaction"}, {"value"=>"session"}]}, "order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def scope prop_get('scope') end def scope=(val) prop_set('scope', val) end def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Signature def signature if @create_children @subclasses['signature'] ||= Signature.new(parent_instance: self, create_children: @create_children) else Signature.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "category"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}, "subcategory"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry[@name='$category']/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry[@name='$category']/subcategory/entry/@name"]}, "technology"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "udp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-half-closed-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout for half-close session in seconds"}, "tcp-time-wait-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "help-string"=>"timeout for session in time_wait state in seconds"}, "risk"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}, "evasive-behavior"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "consume-big-bandwidth"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "used-by-malware"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "able-to-transfer-file"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "has-known-vulnerability"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-other-application"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-applications"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "pervasive-use"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "file-type-ident"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "virus-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "data-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "no-appid-caching"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "alg-disable-capability"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "parent-app"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name|#config/predefined/application-container/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def subcategory prop_get('subcategory') end def subcategory=(val) prop_set('subcategory', val) end def technology prop_get('technology') end def technology=(val) prop_set('technology', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # timeout in seconds def timeout prop_get('timeout') end # timeout in seconds def timeout=(val) prop_set('timeout', val) end # timeout in seconds def tcp_timeout prop_get('tcp-timeout') end # timeout in seconds def tcp_timeout=(val) prop_set('tcp-timeout', val) end # timeout in seconds def udp_timeout prop_get('udp-timeout') end # timeout in seconds def udp_timeout=(val) prop_set('udp-timeout', val) end # timeout for half-close session in seconds def tcp_half_closed_timeout prop_get('tcp-half-closed-timeout') end # timeout for half-close session in seconds def tcp_half_closed_timeout=(val) prop_set('tcp-half-closed-timeout', val) end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout prop_get('tcp-time-wait-timeout') end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout=(val) prop_set('tcp-time-wait-timeout', val) end def risk prop_get('risk') end def risk=(val) prop_set('risk', val) end def evasive_behavior prop_get('evasive-behavior') end def evasive_behavior=(val) prop_set('evasive-behavior', val) end def consume_big_bandwidth prop_get('consume-big-bandwidth') end def consume_big_bandwidth=(val) prop_set('consume-big-bandwidth', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def able_to_transfer_file prop_get('able-to-transfer-file') end def able_to_transfer_file=(val) prop_set('able-to-transfer-file', val) end def has_known_vulnerability prop_get('has-known-vulnerability') end def has_known_vulnerability=(val) prop_set('has-known-vulnerability', val) end def tunnel_other_application prop_get('tunnel-other-application') end def tunnel_other_application=(val) prop_set('tunnel-other-application', val) end def tunnel_applications prop_get('tunnel-applications') end def tunnel_applications=(val) prop_set('tunnel-applications', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive_use prop_get('pervasive-use') end def pervasive_use=(val) prop_set('pervasive-use', val) end def file_type_ident prop_get('file-type-ident') end def file_type_ident=(val) prop_set('file-type-ident', val) end def virus_ident prop_get('virus-ident') end def virus_ident=(val) prop_set('virus-ident', val) end def data_ident prop_get('data-ident') end def data_ident=(val) prop_set('data-ident', val) end def no_appid_caching prop_get('no-appid-caching') end def no_appid_caching=(val) prop_set('no-appid-caching', val) end def alg_disable_capability prop_get('alg-disable-capability') end def alg_disable_capability=(val) prop_set('alg-disable-capability', val) end def parent_app prop_get('parent-app') end def parent_app=(val) prop_set('parent-app', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ApplicationFilter < XML::ConfigClass def has_multiple_values? true end def _section :'application-filter' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Subcategory < XML::ConfigClass def has_multiple_values? true end def _section :'subcategory' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry/subcategory/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Subcategory def subcategory if @create_children @subclasses['subcategory'] ||= Subcategory.new(parent_instance: self, create_children: @create_children) else Subcategory.new(parent_instance: self) end end class Technology < XML::ConfigClass def has_multiple_values? true end def _section :'technology' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Technology def technology if @create_children @subclasses['technology'] ||= Technology.new(parent_instance: self, create_children: @create_children) else Technology.new(parent_instance: self) end end class Risk < XML::ConfigClass def has_multiple_values? true end def _section :'risk' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Risk def risk if @create_children @subclasses['risk'] ||= Risk.new(parent_instance: self, create_children: @create_children) else Risk.new(parent_instance: self) end end class SaasCertifications < XML::ConfigClass def has_multiple_values? true end def _section :'saas-certifications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"32", "autocomplete"=>"yes", "memberof"=> ["##/predefined/appid-saas-risk-fields/certifications/entry/@name", "##/predefined/appid-saas-risk-fields/certifications/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SaasCertifications def saas_certifications if @create_children @subclasses['saas-certifications'] ||= SaasCertifications.new(parent_instance: self, create_children: @create_children) else SaasCertifications.new(parent_instance: self) end end class SaasRisk < XML::ConfigClass def has_multiple_values? true end def _section :'saas-risk' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"32", "autocomplete"=>"yes", "memberof"=>["##/predefined/appid-saas-risk-fields/others/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SaasRisk def saas_risk if @create_children @subclasses['saas-risk'] ||= SaasRisk.new(parent_instance: self, create_children: @create_children) else SaasRisk.new(parent_instance: self) end end class Tagging < XML::ConfigClass def has_multiple_values? true end def _section :'tagging' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/app-tag/entry/display", "##/predefined/app-tag/entry/display"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"no-tag"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}} def no_tag prop_get('no-tag') end def no_tag=(val) prop_set('no-tag', val) end end # class Tagging def tagging if @create_children @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) else Tagging.new(parent_instance: self) end end class Exclude < XML::ConfigClass def has_multiple_values? true end def _section :'exclude' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "#config/shared/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Exclude def exclude if @create_children @subclasses['exclude'] ||= Exclude.new(parent_instance: self, create_children: @create_children) else Exclude.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "evasive"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "excessive-bandwidth-use"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "used-by-malware"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "transfers-files"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "has-known-vulnerabilities"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "tunnels-other-apps"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "pervasive"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "is-saas"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "new-appid"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def evasive prop_get('evasive') end def evasive=(val) prop_set('evasive', val) end def excessive_bandwidth_use prop_get('excessive-bandwidth-use') end def excessive_bandwidth_use=(val) prop_set('excessive-bandwidth-use', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def transfers_files prop_get('transfers-files') end def transfers_files=(val) prop_set('transfers-files', val) end def has_known_vulnerabilities prop_get('has-known-vulnerabilities') end def has_known_vulnerabilities=(val) prop_set('has-known-vulnerabilities', val) end def tunnels_other_apps prop_get('tunnels-other-apps') end def tunnels_other_apps=(val) prop_set('tunnels-other-apps', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive prop_get('pervasive') end def pervasive=(val) prop_set('pervasive', val) end def is_saas prop_get('is-saas') end def is_saas=(val) prop_set('is-saas', val) end def new_appid prop_get('new-appid') end def new_appid=(val) prop_set('new-appid', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationFilter def application_filter if @create_children @subclasses['application-filter'] ||= ApplicationFilter.new(parent_instance: self, create_children: @create_children) else ApplicationFilter.new(parent_instance: self) end end class ApplicationGroup < XML::ConfigClass def has_multiple_values? true end def _section :'application-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name|#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationGroup def application_group if @create_children @subclasses['application-group'] ||= ApplicationGroup.new(parent_instance: self, create_children: @create_children) else ApplicationGroup.new(parent_instance: self) end end class Region < XML::ConfigClass def has_multiple_values? true end def _section :'region' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "type"=>"float", "min"=>"-90.0", "max"=>"90.0", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "type"=>"float", "min"=>"-180.0", "max"=>"180.0", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry[not(@override='no')]/@name", "##/predefined/region/entry[not(@override='no')]/@name"]}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Region def region if @create_children @subclasses['region'] ||= Region.new(parent_instance: self, create_children: @create_children) else Region.new(parent_instance: self) end end class AdminRole < XML::ConfigClass def has_multiple_values? true end def _section :'admin-role' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Role < XML::ConfigClass def has_multiple_values? true end def _section :'role' end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end class Webui < ConfigClass def has_multiple_values? false end def _section :'webui' end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end class Logs < ConfigClass def has_multiple_values? false end def _section :'logs' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"traffic_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"threat_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"URL Filtering", "help-topic"=>"url_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"WildFire Submissions", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filter_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_match_log", "menu-tree-path"=>"HIP Match", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ip_tag", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"userid_log", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_log", "menu-tree-path"=>"GTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_log", "menu-tree-path"=>"Tunnel Inspection", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_log", "menu-tree-path"=>"SCTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "configuration"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def hipmatch__6 prop_get('hipmatch__6') end def hipmatch__6=(val) prop_set('hipmatch__6', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def configuration prop_get('configuration') end def configuration=(val) prop_set('configuration', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def alarm prop_get('alarm') end def alarm=(val) prop_set('alarm', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end end # class Logs def logs @subclasses['logs'] ||= Logs.new(parent_instance: self, create_children: @create_children) end class AutomatedCorrelationEngine < ConfigClass def has_multiple_values? false end def _section :'automated-correlation-engine' end @props={"correlation-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "correlated-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def correlation_objects prop_get('correlation-objects') end def correlation_objects=(val) prop_set('correlation-objects', val) end def correlated_events prop_get('correlated-events') end def correlated_events=(val) prop_set('correlated-events', val) end end # class AutomatedCorrelationEngine def automated_correlation_engine @subclasses['automated-correlation-engine'] ||= AutomatedCorrelationEngine.new(parent_instance: self, create_children: @create_children) end class PdfReports < ConfigClass def has_multiple_values? false end def _section :'pdf-reports' end @props={"manage-pdf-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage PDF Summary", "help-topic"=>"manage_pdf_summary_report", "node-config-ids"=>"ManagePdfSummary", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pdf-summary-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"PDF Summary Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-activity-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"UserActivityReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saas-application-usage-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Application Usage", "node-config-ids"=>"SaasAppUsageReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "report-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ReportGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email-scheduler"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"report_email", "node-config-ids"=>"EmailScheduler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def manage_pdf_summary prop_get('manage-pdf-summary') end def manage_pdf_summary=(val) prop_set('manage-pdf-summary', val) end def pdf_summary_reports prop_get('pdf-summary-reports') end def pdf_summary_reports=(val) prop_set('pdf-summary-reports', val) end def user_activity_report prop_get('user-activity-report') end def user_activity_report=(val) prop_set('user-activity-report', val) end def saas_application_usage_report prop_get('saas-application-usage-report') end def saas_application_usage_report=(val) prop_set('saas-application-usage-report', val) end def report_groups prop_get('report-groups') end def report_groups=(val) prop_set('report-groups', val) end def email_scheduler prop_get('email-scheduler') end def email_scheduler=(val) prop_set('email-scheduler', val) end end # class PdfReports def pdf_reports @subclasses['pdf-reports'] ||= PdfReports.new(parent_instance: self, create_children: @create_children) end class CustomReports < ConfigClass def has_multiple_values? false end def _section :'custom-reports' end @props={"application-statistics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "prune-on"=>"vpn-disable-mode", "menu-tree-path"=>"HIP Match", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"WildFire Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"Authentication", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def application_statistics prop_get('application-statistics') end def application_statistics=(val) prop_set('application-statistics', val) end def data_filtering_log prop_get('data-filtering-log') end def data_filtering_log=(val) prop_set('data-filtering-log', val) end def threat_log prop_get('threat-log') end def threat_log=(val) prop_set('threat-log', val) end def threat_summary prop_get('threat-summary') end def threat_summary=(val) prop_set('threat-summary', val) end def traffic_log prop_get('traffic-log') end def traffic_log=(val) prop_set('traffic-log', val) end def traffic_summary prop_get('traffic-summary') end def traffic_summary=(val) prop_set('traffic-summary', val) end def url_log prop_get('url-log') end def url_log=(val) prop_set('url-log', val) end def url_summary prop_get('url-summary') end def url_summary=(val) prop_set('url-summary', val) end def hipmatch__9 prop_get('hipmatch__9') end def hipmatch__9=(val) prop_set('hipmatch__9', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def wildfire_log prop_get('wildfire-log') end def wildfire_log=(val) prop_set('wildfire-log', val) end def gtp_log prop_get('gtp-log') end def gtp_log=(val) prop_set('gtp-log', val) end def gtp_summary prop_get('gtp-summary') end def gtp_summary=(val) prop_set('gtp-summary', val) end def tunnel_log prop_get('tunnel-log') end def tunnel_log=(val) prop_set('tunnel-log', val) end def tunnel_summary prop_get('tunnel-summary') end def tunnel_summary=(val) prop_set('tunnel-summary', val) end def sctp_log prop_get('sctp-log') end def sctp_log=(val) prop_set('sctp-log', val) end def sctp_summary prop_get('sctp-summary') end def sctp_summary=(val) prop_set('sctp-summary', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end end # class CustomReports def custom_reports @subclasses['custom-reports'] ||= CustomReports.new(parent_instance: self, create_children: @create_children) end @props={"external-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Logs", "help-topic"=>"external_logs", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "app-scope"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-custom-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Scheduled Custom Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "application-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Application Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Threat Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-filtering-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined URL Filtering Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Traffic Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined GTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined SCTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def external_logs prop_get('external-logs') end def external_logs=(val) prop_set('external-logs', val) end def app_scope prop_get('app-scope') end def app_scope=(val) prop_set('app-scope', val) end def view_custom_reports prop_get('view-custom-reports') end def view_custom_reports=(val) prop_set('view-custom-reports', val) end def application_reports prop_get('application-reports') end def application_reports=(val) prop_set('application-reports', val) end def threat_reports prop_get('threat-reports') end def threat_reports=(val) prop_set('threat-reports', val) end def url_filtering_reports prop_get('url-filtering-reports') end def url_filtering_reports=(val) prop_set('url-filtering-reports', val) end def traffic_reports prop_get('traffic-reports') end def traffic_reports=(val) prop_set('traffic-reports', val) end def gtp_reports prop_get('gtp-reports') end def gtp_reports=(val) prop_set('gtp-reports', val) end def sctp_reports prop_get('sctp-reports') end def sctp_reports=(val) prop_set('sctp-reports', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Security", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "node-config-ids"=> "DeviceSecurityRules1,DeviceSecurityRules2,DeviceSecurityRules3,DeviceSecurityRules4,DeviceSecurityRules5,DeviceSecurityRules6", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.nat-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"NAT", "help-topic"=>"nat_rules", "node-config-ids"=>"DeviceNATRules1,DeviceNATRules2,DeviceNATRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceQOSRules1,DeviceQOSRules2,DeviceQOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pbf-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.pbf-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Policy Based Forwarding", "node-config-ids"=>"DevicePBFRules1,DevicePBFRules2,DevicePBFRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Decryption", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "node-config-ids"=> "DeviceDecryptionRules1,DeviceDecryptionRules2,DeviceDecryptionRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspect-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "node-config-ids"=> "DeviceTunnelInspectRules1,DeviceTunnelInspectRules2,DeviceTunnelInspectRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Application Override", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "node-config-ids"=> "DeviceAppOverrideRules1,DeviceAppOverrideRules2,DeviceAppOverrideRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "node-config-ids"=> "DeviceAuthenticationRules1,DeviceAuthenticationRules2,DeviceAuthenticationRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DoS Protection", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "node-config-ids"=>"DeviceDOSRules1,DeviceDOSRules2,DeviceDOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN", "help-topic"=>"sdwan_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceSDWANRules1,DeviceSDWANRules2,DeviceSDWANRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "rule-hit-count-reset"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Rule Hit Count Reset", "help-topic"=>"rule_hit_count_reset", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def security_rulebase prop_get('security-rulebase') end def security_rulebase=(val) prop_set('security-rulebase', val) end def nat_rulebase prop_get('nat-rulebase') end def nat_rulebase=(val) prop_set('nat-rulebase', val) end def qos_rulebase prop_get('qos-rulebase') end def qos_rulebase=(val) prop_set('qos-rulebase', val) end def pbf_rulebase prop_get('pbf-rulebase') end def pbf_rulebase=(val) prop_set('pbf-rulebase', val) end def ssl_decryption_rulebase prop_get('ssl-decryption-rulebase') end def ssl_decryption_rulebase=(val) prop_set('ssl-decryption-rulebase', val) end def tunnel_inspect_rulebase prop_get('tunnel-inspect-rulebase') end def tunnel_inspect_rulebase=(val) prop_set('tunnel-inspect-rulebase', val) end def application_override_rulebase prop_get('application-override-rulebase') end def application_override_rulebase=(val) prop_set('application-override-rulebase', val) end def authentication_rulebase prop_get('authentication-rulebase') end def authentication_rulebase=(val) prop_set('authentication-rulebase', val) end def dos_rulebase prop_get('dos-rulebase') end def dos_rulebase=(val) prop_set('dos-rulebase', val) end def sdwan_rulebase prop_get('sdwan-rulebase') end def sdwan_rulebase=(val) prop_set('sdwan-rulebase', val) end def rule_hit_count_reset prop_get('rule-hit-count-reset') end def rule_hit_count_reset=(val) prop_set('rule-hit-count-reset', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end class GlobalProtect__12 < ConfigClass def has_multiple_values? false end def _section :'global-protect__12' end @props={"hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"HIP Objects", "node-config-ids"=>"HIPObjects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"HIP Profiles", "node-config-ids"=>"HIPProfiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def hip_objects prop_get('hip-objects') end def hip_objects=(val) prop_set('hip-objects', val) end def hip_profiles prop_get('hip-profiles') end def hip_profiles=(val) prop_set('hip-profiles', val) end end # class GlobalProtect__12 def global_protect__12 @subclasses['global-protect__12'] ||= GlobalProtect__12.new(parent_instance: self, create_children: @create_children) end class CustomObjects < ConfigClass def has_multiple_values? false end def _section :'custom-objects' end @props={"data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DataPatterns", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "spyware"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "node-config-ids"=>"CustomSpyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "node-config-ids"=>"CustomVulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-category"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Category", "help-topic"=>"custom_url_categories", "node-config-ids"=>"CustomURLCategory", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def data_patterns prop_get('data-patterns') end def data_patterns=(val) prop_set('data-patterns', val) end def spyware prop_get('spyware') end def spyware=(val) prop_set('spyware', val) end def vulnerability prop_get('vulnerability') end def vulnerability=(val) prop_set('vulnerability', val) end def url_category prop_get('url-category') end def url_category=(val) prop_set('url-category', val) end end # class CustomObjects def custom_objects @subclasses['custom-objects'] ||= CustomObjects.new(parent_instance: self, create_children: @create_children) end class SecurityProfiles < ConfigClass def has_multiple_values? false end def _section :'security-profiles' end @props={"antivirus"=> {"node-type"=>"element", "menu-tree-path"=>"Antivirus", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiVirusProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware"=> {"node-type"=>"element", "menu-tree-path"=>"Anti-Spyware", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiSpywareProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"VulnerabilityProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "menu-tree-path"=>"URL Filtering", "skip-display"=>"shared-gateway", "node-config-ids"=>"URLFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"FileBlocking", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis"=> {"node-type"=>"element", "menu-tree-path"=>"WildFire Analysis", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"WildFireAnalysis", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"DataFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection", "node-config-ids"=>"DoSProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"Mobile Network Protection", "node-config-ids"=>"GTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection", "node-config-ids"=>"SCTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def antivirus prop_get('antivirus') end def antivirus=(val) prop_set('antivirus', val) end def anti_spyware prop_get('anti-spyware') end def anti_spyware=(val) prop_set('anti-spyware', val) end def vulnerability_protection prop_get('vulnerability-protection') end def vulnerability_protection=(val) prop_set('vulnerability-protection', val) end def url_filtering prop_get('url-filtering') end def url_filtering=(val) prop_set('url-filtering', val) end def file_blocking prop_get('file-blocking') end def file_blocking=(val) prop_set('file-blocking', val) end def wildfire_analysis prop_get('wildfire-analysis') end def wildfire_analysis=(val) prop_set('wildfire-analysis', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def dos_protection prop_get('dos-protection') end def dos_protection=(val) prop_set('dos-protection', val) end def gtp_protection prop_get('gtp-protection') end def gtp_protection=(val) prop_set('gtp-protection', val) end def sctp_protection prop_get('sctp-protection') end def sctp_protection=(val) prop_set('sctp-protection', val) end end # class SecurityProfiles def security_profiles @subclasses['security-profiles'] ||= SecurityProfiles.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end @props={"decryption-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "menu-tree-path"=>"Decryption Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profile"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "menu-tree-path"=>"Forwarding Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionForwardingProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def decryption_profile prop_get('decryption-profile') end def decryption_profile=(val) prop_set('decryption-profile', val) end def decryption_forwarding_profile prop_get('decryption-forwarding-profile') end def decryption_forwarding_profile=(val) prop_set('decryption-forwarding-profile', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end @props={"sdwan-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Path Quality Profile", "node-config-ids"=>"SDWANProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Quality Profile", "node-config-ids"=>"SDWANSaaSQualityProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-dist-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic Distribution Profile", "node-config-ids"=>"SDWANDistProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Error Correction Profile", "node-config-ids"=>"SDWANErrorCorrectionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def sdwan_profile prop_get('sdwan-profile') end def sdwan_profile=(val) prop_set('sdwan-profile', val) end def sdwan_saas_quality_profile prop_get('sdwan-saas-quality-profile') end def sdwan_saas_quality_profile=(val) prop_set('sdwan-saas-quality-profile', val) end def sdwan_dist_profile prop_get('sdwan-dist-profile') end def sdwan_dist_profile=(val) prop_set('sdwan-dist-profile', val) end def sdwan_error_correction_profile prop_get('sdwan-error-correction-profile') end def sdwan_error_correction_profile=(val) prop_set('sdwan-error-correction-profile', val) end end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Address", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AddressGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Region", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUserGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Application", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationFilter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Service", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ServiceGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Tag", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-block-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Dynamic Lists", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "node-config-ids"=>"DynamicBlockList", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"SecurityProfileGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "node-config-ids"=>"LogForwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "node-config-ids"=>"AuthenticationObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Schedule", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def dynamic_block_lists prop_get('dynamic-block-lists') end def dynamic_block_lists=(val) prop_set('dynamic-block-lists', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding prop_get('log-forwarding') end def log_forwarding=(val) prop_set('log-forwarding', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Routing < ConfigClass def has_multiple_values? false end def _section :'routing' end class RoutingProfiles < ConfigClass def has_multiple_values? false end def _section :'routing-profiles' end @props={"bgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"routing_profiles_bgp", "menu-tree-path"=>"BGP", "node-config-ids"=>"RoutingProfilesBGP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def bgp prop_get('bgp') end def bgp=(val) prop_set('bgp', val) end end # class RoutingProfiles def routing_profiles @subclasses['routing-profiles'] ||= RoutingProfiles.new(parent_instance: self, create_children: @create_children) end @props={"logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"logical_routers", "node-config-ids"=>"LogicalRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end end # class Routing def routing @subclasses['routing'] ||= Routing.new(parent_instance: self, create_children: @create_children) end class GlobalProtect__11 < ConfigClass def has_multiple_values? false end def _section :'global-protect__11' end @props={"portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"portals_globalprotect", "node-config-ids"=>"GlobalProtectPortal", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gateways_globalprotect", "node-config-ids"=>"GlobalProtectGatewayVSYS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mdm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"MDM", "help-topic"=>"mdm_globalprotect", "node-config-ids"=>"GlobalProtectMDM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_apps", "node-config-ids"=>"GlobalProtectClientlessApp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_app_groups", "node-config-ids"=>"GlobalProtectClientlessAppGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def portals prop_get('portals') end def portals=(val) prop_set('portals', val) end def gateways prop_get('gateways') end def gateways=(val) prop_set('gateways', val) end def mdm prop_get('mdm') end def mdm=(val) prop_set('mdm', val) end def clientless_apps prop_get('clientless-apps') end def clientless_apps=(val) prop_set('clientless-apps', val) end def clientless_app_groups prop_get('clientless-app-groups') end def clientless_app_groups=(val) prop_set('clientless-app-groups', val) end end # class GlobalProtect__11 def global_protect__11 @subclasses['global-protect__11'] ||= GlobalProtect__11.new(parent_instance: self, create_children: @create_children) end class NetworkProfiles < ConfigClass def has_multiple_values? false end def _section :'network-profiles' end @props={"gp-app-ipsec-crypto__1"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.gp-app-ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GpAppIPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateways__2"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-gateways-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IKE Gateways", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKEGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto__3"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "menu-tree-path"=>"IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto__4"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "menu-tree-path"=>"IKE Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKECrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.tunnel-monitor-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Monitor", "help-topic"=>"tunnel_monitor_profiles", "node-config-ids"=>"MonitorProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-mgmt"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.interface-mgmt-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "node-config-ids"=>"InterfaceMgmt", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "node-config-ids"=>"ZoneProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Profile", "node-config-ids"=>"QoSProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Profile", "node-config-ids"=>"LLDPProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Profile", "node-config-ids"=>"BFDProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def gp_app_ipsec_crypto__1 prop_get('gp-app-ipsec-crypto__1') end def gp_app_ipsec_crypto__1=(val) prop_set('gp-app-ipsec-crypto__1', val) end def ike_gateways__2 prop_get('ike-gateways__2') end def ike_gateways__2=(val) prop_set('ike-gateways__2', val) end def ipsec_crypto__3 prop_get('ipsec-crypto__3') end def ipsec_crypto__3=(val) prop_set('ipsec-crypto__3', val) end def ike_crypto__4 prop_get('ike-crypto__4') end def ike_crypto__4=(val) prop_set('ike-crypto__4', val) end def tunnel_monitor prop_get('tunnel-monitor') end def tunnel_monitor=(val) prop_set('tunnel-monitor', val) end def interface_mgmt prop_get('interface-mgmt') end def interface_mgmt=(val) prop_set('interface-mgmt', val) end def zone_protection prop_get('zone-protection') end def zone_protection=(val) prop_set('zone-protection', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def lldp_profile prop_get('lldp-profile') end def lldp_profile=(val) prop_set('lldp-profile', val) end def bfd_profile prop_get('bfd-profile') end def bfd_profile=(val) prop_set('bfd-profile', val) end end # class NetworkProfiles def network_profiles @subclasses['network-profiles'] ||= NetworkProfiles.new(parent_instance: self, create_children: @create_children) end @props={"interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "node-config-ids"=>"Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Zones", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.vlans-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "node-config-ids"=>"VLAN", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualWires", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.network.vm.virtual-routers-disable=True", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__7"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.ipsec-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"IPSec Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecTunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__8"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.gre-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"GRE Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GRETunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dhcp-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP", "node-config-ids"=>"DHCP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxy"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dns-proxy-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxy", "node-config-ids"=>"DNSProxy", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "node-config-ids"=>"QoSInterface", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "node-config-ids"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profile", "node-config-ids"=>"SDWANInterfaceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def ipsec_tunnels__7 prop_get('ipsec-tunnels__7') end def ipsec_tunnels__7=(val) prop_set('ipsec-tunnels__7', val) end def gre_tunnels__8 prop_get('gre-tunnels__8') end def gre_tunnels__8=(val) prop_set('gre-tunnels__8', val) end def dhcp prop_get('dhcp') end def dhcp=(val) prop_set('dhcp', val) end def dns_proxy prop_get('dns-proxy') end def dns_proxy=(val) prop_set('dns-proxy', val) end def qos prop_get('qos') end def qos=(val) prop_set('qos', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def sdwan_interface_profile prop_get('sdwan-interface-profile') end def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ocsp-responder"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"OCSP Responder", "node-config-ids"=>"OCSPResponder", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-exclusion"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL Decryption Exclusion", "node-config-ids"=>"SslDecryptionExclusion", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ocsp_responder prop_get('ocsp-responder') end def ocsp_responder=(val) prop_set('ocsp-responder', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssl_decryption_exclusion prop_get('ssl-decryption-exclusion') end def ssl_decryption_exclusion=(val) prop_set('ssl-decryption-exclusion', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "iptag__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IP-Tag", "help-topic"=>"ip_tag_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "cc-alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "manage-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage Logs", "skip-menu-tree-display"=>"template", "help-topic"=>"manage_logs_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def user_id__3 prop_get('user-id__3') end def user_id__3=(val) prop_set('user-id__3', val) end def hipmatch__4 prop_get('hipmatch__4') end def hipmatch__4=(val) prop_set('hipmatch__4', val) end def globalprotect__5 prop_get('globalprotect__5') end def globalprotect__5=(val) prop_set('globalprotect__5', val) end def iptag__6 prop_get('iptag__6') end def iptag__6=(val) prop_set('iptag__6', val) end def correlation__7 prop_get('correlation__7') end def correlation__7=(val) prop_set('correlation__7', val) end def cc_alarm prop_get('cc-alarm') end def cc_alarm=(val) prop_set('cc-alarm', val) end def manage_log prop_get('manage-log') end def manage_log=(val) prop_set('manage-log', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "node-config-ids"=>"ServerProfileSNMPTrap", "menu-tree-path"=>"SNMP Trap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "netflow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"netflow_settings", "node-config-ids"=>"ServerProfileNetflow", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "node-config-ids"=>"ServerProfileRadius", "menu-tree-path"=>"RADIUS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "node-config-ids"=>"ServerProfileTacacs", "menu-tree-path"=>"TACACS+", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "node-config-ids"=>"ServerProfileKerberos", "skip-display"=>"fips-mode,cc-only-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "help-topic"=>"server_dns", "menu-tree-path"=>"DNS", "node-config-ids"=>"ServerProfileDNS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mfa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_mfa", "menu-tree-path"=>"Multi Factor Authentication", "node-config-ids"=>"ServerProfileMFA", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def netflow prop_get('netflow') end def netflow=(val) prop_set('netflow', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end def dns prop_get('dns') end def dns=(val) prop_set('dns', val) end def mfa prop_get('mfa') end def mfa=(val) prop_set('mfa', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end @props={"users"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_users", "node-config-ids"=>"LocalUsers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_user_groups", "node-config-ids"=>"LocalUserGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def users prop_get('users') end def users=(val) prop_set('users', val) end def user_groups prop_get('user-groups') end def user_groups=(val) prop_set('user-groups', val) end end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end @props={"high-availability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"HASetup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-fwd-card"=> {"node-type"=>"element", "node-config-ids"=>"LFCInterface", "menu-tree-path"=>"Log Forwarding Card", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"admin_accounts", "node-config-ids"=>"Administrator", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "admin-roles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AdminRoleHandler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "access-domain"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"AccessDomain", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_user_id", "node-config-ids"=> "UserIdCollector,ServerMonitor,IncludeExcludeNetwork,UserIdConnSecurity,UserIdAgent,TSAgent,GroupMapping", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=> "RDAgent,DataRedistributionCollector,DataRedistributionIPUserIncludeExcludeNetwork,DataRedistributionIPTagIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vm-info-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VM Information Sources", "node-config-ids"=>"VMInformationSources", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"VirtualSystem", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "shared-gateways"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"SharedGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-pages"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Response Pages", "node-config-ids"=>"ResponsePageTopLevel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scheduled-log-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_export", "node-config-ids"=>"ScheduledLogExport", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "global-protect-client__23"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Client", "prune-on"=>"vpn-disable-mode", "skip-display"=>"yes", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUpdates", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"license", "skip-display"=>"yes", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "support"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "master-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Master Key and Diagnostics", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def high_availability prop_get('high-availability') end def high_availability=(val) prop_set('high-availability', val) end def log_fwd_card prop_get('log-fwd-card') end def log_fwd_card=(val) prop_set('log-fwd-card', val) end def config_audit prop_get('config-audit') end def config_audit=(val) prop_set('config-audit', val) end def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def admin_roles prop_get('admin-roles') end def admin_roles=(val) prop_set('admin-roles', val) end def access_domain prop_get('access-domain') end def access_domain=(val) prop_set('access-domain', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def vm_info_source prop_get('vm-info-source') end def vm_info_source=(val) prop_set('vm-info-source', val) end def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end def shared_gateways prop_get('shared-gateways') end def shared_gateways=(val) prop_set('shared-gateways', val) end def block_pages prop_get('block-pages') end def block_pages=(val) prop_set('block-pages', val) end def scheduled_log_export prop_get('scheduled-log-export') end def scheduled_log_export=(val) prop_set('scheduled-log-export', val) end def software prop_get('software') end def software=(val) prop_set('software', val) end def global_protect_client__23 prop_get('global-protect-client__23') end def global_protect_client__23=(val) prop_set('global-protect-client__23', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end def support prop_get('support') end def support=(val) prop_set('support', val) end def master_key prop_get('master-key') end def master_key=(val) prop_set('master-key', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class ManagedDevices < ConfigClass def has_multiple_values? false end def _section :'managed-devices' end @props={"summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_manage_devices", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "health"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_devices_health", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "troubleshooting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"troubleshooting", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def summary prop_get('summary') end def summary=(val) prop_set('summary', val) end def health prop_get('health') end def health=(val) prop_set('health', val) end def troubleshooting prop_get('troubleshooting') end def troubleshooting=(val) prop_set('troubleshooting', val) end end # class ManagedDevices def managed_devices @subclasses['managed-devices'] ||= ManagedDevices.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "no-tree"=>"yes", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "menu-tree-path"=>"Configuration", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "traffic__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic", "help-topic"=>"traffic_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "threat__8"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Threat", "help-topic"=>"threat_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_log_settings", "menu-tree-path"=>"WildFire Submissions", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_log_settings", "menu-tree-path"=>"URL Filtering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_log_settings", "menu-tree-path"=>"Data Filtering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp__12"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GTP", "help-topic"=>"gtp_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel__13"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "help-topic"=>"tunnel_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication__14"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "help-topic"=>"authentication_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "cc-alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def user_id__3 prop_get('user-id__3') end def user_id__3=(val) prop_set('user-id__3', val) end def hipmatch__4 prop_get('hipmatch__4') end def hipmatch__4=(val) prop_set('hipmatch__4', val) end def globalprotect__5 prop_get('globalprotect__5') end def globalprotect__5=(val) prop_set('globalprotect__5', val) end def correlation__6 prop_get('correlation__6') end def correlation__6=(val) prop_set('correlation__6', val) end def traffic__7 prop_get('traffic__7') end def traffic__7=(val) prop_set('traffic__7', val) end def threat__8 prop_get('threat__8') end def threat__8=(val) prop_set('threat__8', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp__12 prop_get('gtp__12') end def gtp__12=(val) prop_set('gtp__12', val) end def tunnel__13 prop_get('tunnel__13') end def tunnel__13=(val) prop_set('tunnel__13', val) end def authentication__14 prop_get('authentication__14') end def authentication__14=(val) prop_set('authentication__14', val) end def cc_alarm prop_get('cc-alarm') end def cc_alarm=(val) prop_set('cc-alarm', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "menu-tree-path"=>"SNMP Trap", "node-config-ids"=>"ServerProfileSNMPTrap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "menu-tree-path"=>"RADIUS", "node-config-ids"=>"ServerProfileRadius", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"scp_settings", "menu-tree-path"=>"SCP", "node-config-ids"=>"ServerProfileSCP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "menu-tree-path"=>"TACACS+", "node-config-ids"=>"ServerProfileTacacs", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "skip-display"=>"fips-mode,cc-only-mode", "node-config-ids"=>"ServerProfileKerberos", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def scp prop_get('scp') end def scp=(val) prop_set('scp', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class Deployment < ConfigClass def has_multiple_values? false end def _section :'deployment' end @props={"software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "global-protect-client"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Client", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "plugins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def software prop_get('software') end def software=(val) prop_set('software', val) end def global_protect_client prop_get('global-protect-client') end def global_protect_client=(val) prop_set('global-protect-client', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def plugins prop_get('plugins') end def plugins=(val) prop_set('plugins', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end end # class Deployment def deployment @subclasses['deployment'] ||= Deployment.new(parent_instance: self, create_children: @create_children) end @props={"high-availability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_ha", "node-config-ids"=>"HASetupCMS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_config_audit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "manage-wildfire-clusters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_wf_clusters", "menu-tree-path"=>"Managed WildFire Clusters", "node-config-ids"=>"WildFireClusters", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "manage-wildfire-appliances"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_wf_appliances", "menu-tree-path"=>"Managed WildFire Appliances", "node-config-ids"=>"WildFireAppliances", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_admin_accounts", "node-config-ids"=>"Administrator", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "admin-roles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_admin_roles", "node-config-ids"=>"AdminRoleHandler", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "access-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_access_domain", "node-config-ids"=>"AccessDomain", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_user_id", "node-config-ids"=>"UserIdAgent", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "help-topic"=>"data_redistribution", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=>"RDAgent,DataRedistributionIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-quarantine"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Device Quarantine", "help-topic"=>"panorama_device_quarantine", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_template", "node-config-ids"=>"Template", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_device_groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "managed-collectors"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ManagedCollectors", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "collector-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ManagedCollectorGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-ingestion-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"LogIngestionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "plugins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"license", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "support"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "master-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Master Key and Diagnostics", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-recommendation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policy_recommendation", "menu-tree-path"=>"Policy Recommendation", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def high_availability prop_get('high-availability') end def high_availability=(val) prop_set('high-availability', val) end def config_audit prop_get('config-audit') end def config_audit=(val) prop_set('config-audit', val) end def manage_wildfire_clusters prop_get('manage-wildfire-clusters') end def manage_wildfire_clusters=(val) prop_set('manage-wildfire-clusters', val) end def manage_wildfire_appliances prop_get('manage-wildfire-appliances') end def manage_wildfire_appliances=(val) prop_set('manage-wildfire-appliances', val) end def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def admin_roles prop_get('admin-roles') end def admin_roles=(val) prop_set('admin-roles', val) end def access_domain prop_get('access-domain') end def access_domain=(val) prop_set('access-domain', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def device_quarantine prop_get('device-quarantine') end def device_quarantine=(val) prop_set('device-quarantine', val) end def templates prop_get('templates') end def templates=(val) prop_set('templates', val) end def device_groups prop_get('device-groups') end def device_groups=(val) prop_set('device-groups', val) end def managed_collectors prop_get('managed-collectors') end def managed_collectors=(val) prop_set('managed-collectors', val) end def collector_groups prop_get('collector-groups') end def collector_groups=(val) prop_set('collector-groups', val) end def log_ingestion_profile prop_get('log-ingestion-profile') end def log_ingestion_profile=(val) prop_set('log-ingestion-profile', val) end def software prop_get('software') end def software=(val) prop_set('software', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def plugins prop_get('plugins') end def plugins=(val) prop_set('plugins', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end def support prop_get('support') end def support=(val) prop_set('support', val) end def master_key prop_get('master-key') end def master_key=(val) prop_set('master-key', val) end def policy_recommendation prop_get('policy-recommendation') end def policy_recommendation=(val) prop_set('policy-recommendation', val) end end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Privacy < ConfigClass def has_multiple_values? false end def _section :'privacy' end @props={"show-full-ip-addresses"=> {"node-type"=>"element", "menu-tree-path"=>"Show Full IP Addresses", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "show-user-names-in-logs-and-reports"=> {"node-type"=>"element", "menu-tree-path"=>"Show Username In Logs And Reports", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-pcap-files"=> {"node-type"=>"element", "menu-tree-path"=>"View PCAP Files", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def show_full_ip_addresses prop_get('show-full-ip-addresses') end def show_full_ip_addresses=(val) prop_set('show-full-ip-addresses', val) end def show_user_names_in_logs_and_reports prop_get('show-user-names-in-logs-and-reports') end def show_user_names_in_logs_and_reports=(val) prop_set('show-user-names-in-logs-and-reports', val) end def view_pcap_files prop_get('view-pcap-files') end def view_pcap_files=(val) prop_set('view-pcap-files', val) end end # class Privacy def privacy @subclasses['privacy'] ||= Privacy.new(parent_instance: self, create_children: @create_children) end class Save < ConfigClass def has_multiple_values? false end def _section :'save' end @props={"partial-save"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "save-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def partial_save prop_get('partial-save') end def partial_save=(val) prop_set('partial-save', val) end def save_for_other_admins prop_get('save-for-other-admins') end def save_for_other_admins=(val) prop_set('save-for-other-admins', val) end end # class Save def save @subclasses['save'] ||= Save.new(parent_instance: self, create_children: @create_children) end class Commit < ConfigClass def has_multiple_values? false end def _section :'commit' end @props={"panorama"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "device-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "force-template-values"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "collector-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-appliance-clusters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def panorama prop_get('panorama') end def panorama=(val) prop_set('panorama', val) end def commit_for_other_admins prop_get('commit-for-other-admins') end def commit_for_other_admins=(val) prop_set('commit-for-other-admins', val) end def device_groups prop_get('device-groups') end def device_groups=(val) prop_set('device-groups', val) end def templates prop_get('templates') end def templates=(val) prop_set('templates', val) end def force_template_values prop_get('force-template-values') end def force_template_values=(val) prop_set('force-template-values', val) end def collector_groups prop_get('collector-groups') end def collector_groups=(val) prop_set('collector-groups', val) end def wildfire_appliance_clusters prop_get('wildfire-appliance-clusters') end def wildfire_appliance_clusters=(val) prop_set('wildfire-appliance-clusters', val) end end # class Commit def commit @subclasses['commit'] ||= Commit.new(parent_instance: self, create_children: @create_children) end class Global < ConfigClass def has_multiple_values? false end def _section :'global' end @props={"system-alarms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_alarms", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def system_alarms prop_get('system-alarms') end def system_alarms=(val) prop_set('system-alarms', val) end end # class Global def global @subclasses['global'] ||= Global.new(parent_instance: self, create_children: @create_children) end @props={"dashboard"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "acc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"ACC", "prune-on-sdb"=>"cfg.vm-license-type=vm50l", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tasks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def dashboard prop_get('dashboard') end def dashboard=(val) prop_set('dashboard', val) end def acc prop_get('acc') end def acc=(val) prop_set('acc', val) end def tasks prop_get('tasks') end def tasks=(val) prop_set('tasks', val) end end # class Webui def webui @subclasses['webui'] ||= Webui.new(parent_instance: self, create_children: @create_children) end class Xmlapi < ConfigClass def has_multiple_values? false end def _section :'xmlapi' end @props={"report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Report", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Configuration", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "op"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Operational Requests", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Commit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IoT Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Export", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "import"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Import", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def report prop_get('report') end def report=(val) prop_set('report', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def op prop_get('op') end def op=(val) prop_set('op', val) end def commit prop_get('commit') end def commit=(val) prop_set('commit', val) end def user_id prop_get('user-id') end def user_id=(val) prop_set('user-id', val) end def iot prop_get('iot') end def iot=(val) prop_set('iot', val) end def export prop_get('export') end def export=(val) prop_set('export', val) end def import prop_get('import') end def import=(val) prop_set('import', val) end end # class Xmlapi def xmlapi @subclasses['xmlapi'] ||= Xmlapi.new(parent_instance: self, create_children: @create_children) end class Restapi < ConfigClass def has_multiple_values? false end def _section :'restapi' end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"GlobalProtect HIP Objects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"GlobalProtect HIP Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "external-dynamic-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-spyware-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-vulnerability-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-url-categories"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"custom_url_categories", "menu-tree-path"=>"URL Category", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "antivirus-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Filtering Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"WildFire Analysis Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"GTP Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection Secuirty Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-enforcements"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-path-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-path-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Path Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-saas-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Saas Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-traffic-distribution-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-traffic-distribution-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Traffic Distribution Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-error-correction-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Error Correction Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def globalprotect_hip_objects prop_get('globalprotect-hip-objects') end def globalprotect_hip_objects=(val) prop_set('globalprotect-hip-objects', val) end def globalprotect_hip_profiles prop_get('globalprotect-hip-profiles') end def globalprotect_hip_profiles=(val) prop_set('globalprotect-hip-profiles', val) end def external_dynamic_lists prop_get('external-dynamic-lists') end def external_dynamic_lists=(val) prop_set('external-dynamic-lists', val) end def custom_data_patterns prop_get('custom-data-patterns') end def custom_data_patterns=(val) prop_set('custom-data-patterns', val) end def custom_spyware_signatures prop_get('custom-spyware-signatures') end def custom_spyware_signatures=(val) prop_set('custom-spyware-signatures', val) end def custom_vulnerability_signatures prop_get('custom-vulnerability-signatures') end def custom_vulnerability_signatures=(val) prop_set('custom-vulnerability-signatures', val) end def custom_url_categories prop_get('custom-url-categories') end def custom_url_categories=(val) prop_set('custom-url-categories', val) end def antivirus_security_profiles prop_get('antivirus-security-profiles') end def antivirus_security_profiles=(val) prop_set('antivirus-security-profiles', val) end def anti_spyware_security_profiles prop_get('anti-spyware-security-profiles') end def anti_spyware_security_profiles=(val) prop_set('anti-spyware-security-profiles', val) end def vulnerability_protection_security_profiles prop_get('vulnerability-protection-security-profiles') end def vulnerability_protection_security_profiles=(val) prop_set('vulnerability-protection-security-profiles', val) end def url_filtering_security_profiles prop_get('url-filtering-security-profiles') end def url_filtering_security_profiles=(val) prop_set('url-filtering-security-profiles', val) end def file_blocking_security_profiles prop_get('file-blocking-security-profiles') end def file_blocking_security_profiles=(val) prop_set('file-blocking-security-profiles', val) end def wildfire_analysis_security_profiles prop_get('wildfire-analysis-security-profiles') end def wildfire_analysis_security_profiles=(val) prop_set('wildfire-analysis-security-profiles', val) end def data_filtering_security_profiles prop_get('data-filtering-security-profiles') end def data_filtering_security_profiles=(val) prop_set('data-filtering-security-profiles', val) end def dos_protection_security_profiles prop_get('dos-protection-security-profiles') end def dos_protection_security_profiles=(val) prop_set('dos-protection-security-profiles', val) end def gtp_protection_security_profiles prop_get('gtp-protection-security-profiles') end def gtp_protection_security_profiles=(val) prop_set('gtp-protection-security-profiles', val) end def sctp_protection_security_profiles prop_get('sctp-protection-security-profiles') end def sctp_protection_security_profiles=(val) prop_set('sctp-protection-security-profiles', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding_profiles prop_get('log-forwarding-profiles') end def log_forwarding_profiles=(val) prop_set('log-forwarding-profiles', val) end def authentication_enforcements prop_get('authentication-enforcements') end def authentication_enforcements=(val) prop_set('authentication-enforcements', val) end def decryption_profiles prop_get('decryption-profiles') end def decryption_profiles=(val) prop_set('decryption-profiles', val) end def decryption_forwarding_profiles prop_get('decryption-forwarding-profiles') end def decryption_forwarding_profiles=(val) prop_set('decryption-forwarding-profiles', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end def sdwan_path_quality_profiles prop_get('sdwan-path-quality-profiles') end def sdwan_path_quality_profiles=(val) prop_set('sdwan-path-quality-profiles', val) end def sdwan_saas_quality_profiles prop_get('sdwan-saas-quality-profiles') end def sdwan_saas_quality_profiles=(val) prop_set('sdwan-saas-quality-profiles', val) end def sdwan_traffic_distribution_profiles prop_get('sdwan-traffic-distribution-profiles') end def sdwan_traffic_distribution_profiles=(val) prop_set('sdwan-traffic-distribution-profiles', val) end def sdwan_error_correction_profiles prop_get('sdwan-error-correction-profiles') end def sdwan_error_correction_profiles=(val) prop_set('sdwan-error-correction-profiles', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"nat_rules", "menu-tree-path"=>"NAT Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "menu-tree-path"=>"QoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-based-forwarding-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspection-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "menu-tree-path"=>"DoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"sdwan-rules", "menu-tree-path"=>"SD-WAN Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def security_rules prop_get('security-rules') end def security_rules=(val) prop_set('security-rules', val) end def nat_rules prop_get('nat-rules') end def nat_rules=(val) prop_set('nat-rules', val) end def qos_rules prop_get('qos-rules') end def qos_rules=(val) prop_set('qos-rules', val) end def policy_based_forwarding_rules prop_get('policy-based-forwarding-rules') end def policy_based_forwarding_rules=(val) prop_set('policy-based-forwarding-rules', val) end def decryption_rules prop_get('decryption-rules') end def decryption_rules=(val) prop_set('decryption-rules', val) end def tunnel_inspection_rules prop_get('tunnel-inspection-rules') end def tunnel_inspection_rules=(val) prop_set('tunnel-inspection-rules', val) end def application_override_rules prop_get('application-override-rules') end def application_override_rules=(val) prop_set('application-override-rules', val) end def authentication_rules prop_get('authentication-rules') end def authentication_rules=(val) prop_set('authentication-rules', val) end def dos_rules prop_get('dos-rules') end def dos_rules=(val) prop_set('dos-rules', val) end def sdwan_rules prop_get('sdwan-rules') end def sdwan_rules=(val) prop_set('sdwan-rules', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end @props={"aggregate-ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "menu-tree-path"=>"VLAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "loopback-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bgp-routing-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BGP Routing Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__12"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__13"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GRE Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-servers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-relays"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Relays", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxies"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxies", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Portals", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Gateways", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-mdm-servers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect MDM Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless Apps", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless App Groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-ipsec-crypto-network-profiles__24"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GlobalProtect IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateway-network-profiles__25"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Gateway Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto-network-profiles__26"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto-network-profiles__27"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_monitor_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-management-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def aggregate_ethernet_interfaces prop_get('aggregate-ethernet-interfaces') end def aggregate_ethernet_interfaces=(val) prop_set('aggregate-ethernet-interfaces', val) end def ethernet_interfaces prop_get('ethernet-interfaces') end def ethernet_interfaces=(val) prop_set('ethernet-interfaces', val) end def vlan_interfaces prop_get('vlan-interfaces') end def vlan_interfaces=(val) prop_set('vlan-interfaces', val) end def loopback_interfaces prop_get('loopback-interfaces') end def loopback_interfaces=(val) prop_set('loopback-interfaces', val) end def tunnel_interfaces prop_get('tunnel-interfaces') end def tunnel_interfaces=(val) prop_set('tunnel-interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end def bgp_routing_profiles prop_get('bgp-routing-profiles') end def bgp_routing_profiles=(val) prop_set('bgp-routing-profiles', val) end def ipsec_tunnels__12 prop_get('ipsec-tunnels__12') end def ipsec_tunnels__12=(val) prop_set('ipsec-tunnels__12', val) end def gre_tunnels__13 prop_get('gre-tunnels__13') end def gre_tunnels__13=(val) prop_set('gre-tunnels__13', val) end def dhcp_servers prop_get('dhcp-servers') end def dhcp_servers=(val) prop_set('dhcp-servers', val) end def dhcp_relays prop_get('dhcp-relays') end def dhcp_relays=(val) prop_set('dhcp-relays', val) end def dns_proxies prop_get('dns-proxies') end def dns_proxies=(val) prop_set('dns-proxies', val) end def globalprotect_portals prop_get('globalprotect-portals') end def globalprotect_portals=(val) prop_set('globalprotect-portals', val) end def globalprotect_gateways prop_get('globalprotect-gateways') end def globalprotect_gateways=(val) prop_set('globalprotect-gateways', val) end def globalprotect_mdm_servers prop_get('globalprotect-mdm-servers') end def globalprotect_mdm_servers=(val) prop_set('globalprotect-mdm-servers', val) end def globalprotect_clientless_apps prop_get('globalprotect-clientless-apps') end def globalprotect_clientless_apps=(val) prop_set('globalprotect-clientless-apps', val) end def globalprotect_clientless_app_groups prop_get('globalprotect-clientless-app-groups') end def globalprotect_clientless_app_groups=(val) prop_set('globalprotect-clientless-app-groups', val) end def qos_interfaces prop_get('qos-interfaces') end def qos_interfaces=(val) prop_set('qos-interfaces', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def globalprotect_ipsec_crypto_network_profiles__24 prop_get('globalprotect-ipsec-crypto-network-profiles__24') end def globalprotect_ipsec_crypto_network_profiles__24=(val) prop_set('globalprotect-ipsec-crypto-network-profiles__24', val) end def ike_gateway_network_profiles__25 prop_get('ike-gateway-network-profiles__25') end def ike_gateway_network_profiles__25=(val) prop_set('ike-gateway-network-profiles__25', val) end def ipsec_crypto_network_profiles__26 prop_get('ipsec-crypto-network-profiles__26') end def ipsec_crypto_network_profiles__26=(val) prop_set('ipsec-crypto-network-profiles__26', val) end def ike_crypto_network_profiles__27 prop_get('ike-crypto-network-profiles__27') end def ike_crypto_network_profiles__27=(val) prop_set('ike-crypto-network-profiles__27', val) end def tunnel_monitor_network_profiles prop_get('tunnel-monitor-network-profiles') end def tunnel_monitor_network_profiles=(val) prop_set('tunnel-monitor-network-profiles', val) end def interface_management_network_profiles prop_get('interface-management-network-profiles') end def interface_management_network_profiles=(val) prop_set('interface-management-network-profiles', val) end def zone_protection_network_profiles prop_get('zone-protection-network-profiles') end def zone_protection_network_profiles=(val) prop_set('zone-protection-network-profiles', val) end def qos_network_profiles prop_get('qos-network-profiles') end def qos_network_profiles=(val) prop_set('qos-network-profiles', val) end def lldp_network_profiles prop_get('lldp-network-profiles') end def lldp_network_profiles=(val) prop_set('lldp-network-profiles', val) end def bfd_network_profiles prop_get('bfd-network-profiles') end def bfd_network_profiles=(val) prop_set('bfd-network-profiles', val) end def sdwan_interfaces prop_get('sdwan-interfaces') end def sdwan_interfaces=(val) prop_set('sdwan-interfaces', val) end def sdwan_interface_profiles prop_get('sdwan-interface-profiles') end def sdwan_interface_profiles=(val) prop_set('sdwan-interface-profiles', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={"templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_template", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "template-stacks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_template", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_device_groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def templates prop_get('templates') end def templates=(val) prop_set('templates', val) end def template_stacks prop_get('template-stacks') end def template_stacks=(val) prop_set('template-stacks', val) end def device_groups prop_get('device-groups') end def device_groups=(val) prop_set('device-groups', val) end end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end @props={} end # class Restapi def restapi @subclasses['restapi'] ||= Restapi.new(parent_instance: self, create_children: @create_children) end @props={"device-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=> "Admin role to be used while context switching to the device as a device admin"}, "cli"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"superuser"}, {"value"=>"superreader"}, {"value"=>"panorama-admin"}]}} # Admin role to be used while context switching to the device as a device admin def device_admin_role prop_get('device-admin-role') end # Admin role to be used while context switching to the device as a device admin def device_admin_role=(val) prop_set('device-admin-role', val) end def cli prop_get('cli') end def cli=(val) prop_set('cli', val) end end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class DeviceGroup < ConfigClass def has_multiple_values? false end def _section :'device-group' end class Webui < ConfigClass def has_multiple_values? false end def _section :'webui' end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end class Logs < ConfigClass def has_multiple_values? false end def _section :'logs' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"traffic_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"threat_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"URL Filtering", "help-topic"=>"url_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"WildFire Submissions", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filter_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_match_log", "menu-tree-path"=>"HIP Match", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ip_tag", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"userid_log", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_log", "menu-tree-path"=>"GTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_log", "menu-tree-path"=>"Tunnel Inspection", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_log", "menu-tree-path"=>"SCTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "configuration"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def hipmatch__6 prop_get('hipmatch__6') end def hipmatch__6=(val) prop_set('hipmatch__6', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def configuration prop_get('configuration') end def configuration=(val) prop_set('configuration', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def alarm prop_get('alarm') end def alarm=(val) prop_set('alarm', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end end # class Logs def logs @subclasses['logs'] ||= Logs.new(parent_instance: self, create_children: @create_children) end class AutomatedCorrelationEngine < ConfigClass def has_multiple_values? false end def _section :'automated-correlation-engine' end @props={"correlation-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "correlated-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def correlation_objects prop_get('correlation-objects') end def correlation_objects=(val) prop_set('correlation-objects', val) end def correlated_events prop_get('correlated-events') end def correlated_events=(val) prop_set('correlated-events', val) end end # class AutomatedCorrelationEngine def automated_correlation_engine @subclasses['automated-correlation-engine'] ||= AutomatedCorrelationEngine.new(parent_instance: self, create_children: @create_children) end class PdfReports < ConfigClass def has_multiple_values? false end def _section :'pdf-reports' end @props={"manage-pdf-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage PDF Summary", "help-topic"=>"manage_pdf_summary_report", "node-config-ids"=>"ManagePdfSummary", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pdf-summary-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"PDF Summary Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-activity-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"UserActivityReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saas-application-usage-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Application Usage", "node-config-ids"=>"SaasAppUsageReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "report-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ReportGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email-scheduler"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"report_email", "node-config-ids"=>"EmailScheduler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def manage_pdf_summary prop_get('manage-pdf-summary') end def manage_pdf_summary=(val) prop_set('manage-pdf-summary', val) end def pdf_summary_reports prop_get('pdf-summary-reports') end def pdf_summary_reports=(val) prop_set('pdf-summary-reports', val) end def user_activity_report prop_get('user-activity-report') end def user_activity_report=(val) prop_set('user-activity-report', val) end def saas_application_usage_report prop_get('saas-application-usage-report') end def saas_application_usage_report=(val) prop_set('saas-application-usage-report', val) end def report_groups prop_get('report-groups') end def report_groups=(val) prop_set('report-groups', val) end def email_scheduler prop_get('email-scheduler') end def email_scheduler=(val) prop_set('email-scheduler', val) end end # class PdfReports def pdf_reports @subclasses['pdf-reports'] ||= PdfReports.new(parent_instance: self, create_children: @create_children) end class CustomReports < ConfigClass def has_multiple_values? false end def _section :'custom-reports' end @props={"application-statistics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "prune-on"=>"vpn-disable-mode", "menu-tree-path"=>"HIP Match", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"WildFire Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"Authentication", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def application_statistics prop_get('application-statistics') end def application_statistics=(val) prop_set('application-statistics', val) end def data_filtering_log prop_get('data-filtering-log') end def data_filtering_log=(val) prop_set('data-filtering-log', val) end def threat_log prop_get('threat-log') end def threat_log=(val) prop_set('threat-log', val) end def threat_summary prop_get('threat-summary') end def threat_summary=(val) prop_set('threat-summary', val) end def traffic_log prop_get('traffic-log') end def traffic_log=(val) prop_set('traffic-log', val) end def traffic_summary prop_get('traffic-summary') end def traffic_summary=(val) prop_set('traffic-summary', val) end def url_log prop_get('url-log') end def url_log=(val) prop_set('url-log', val) end def url_summary prop_get('url-summary') end def url_summary=(val) prop_set('url-summary', val) end def hipmatch__9 prop_get('hipmatch__9') end def hipmatch__9=(val) prop_set('hipmatch__9', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def wildfire_log prop_get('wildfire-log') end def wildfire_log=(val) prop_set('wildfire-log', val) end def gtp_log prop_get('gtp-log') end def gtp_log=(val) prop_set('gtp-log', val) end def gtp_summary prop_get('gtp-summary') end def gtp_summary=(val) prop_set('gtp-summary', val) end def tunnel_log prop_get('tunnel-log') end def tunnel_log=(val) prop_set('tunnel-log', val) end def tunnel_summary prop_get('tunnel-summary') end def tunnel_summary=(val) prop_set('tunnel-summary', val) end def sctp_log prop_get('sctp-log') end def sctp_log=(val) prop_set('sctp-log', val) end def sctp_summary prop_get('sctp-summary') end def sctp_summary=(val) prop_set('sctp-summary', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end end # class CustomReports def custom_reports @subclasses['custom-reports'] ||= CustomReports.new(parent_instance: self, create_children: @create_children) end @props={"external-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Logs", "help-topic"=>"external_logs", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "app-scope"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-custom-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Scheduled Custom Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "application-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Application Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Threat Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-filtering-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined URL Filtering Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Traffic Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined GTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined SCTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def external_logs prop_get('external-logs') end def external_logs=(val) prop_set('external-logs', val) end def app_scope prop_get('app-scope') end def app_scope=(val) prop_set('app-scope', val) end def view_custom_reports prop_get('view-custom-reports') end def view_custom_reports=(val) prop_set('view-custom-reports', val) end def application_reports prop_get('application-reports') end def application_reports=(val) prop_set('application-reports', val) end def threat_reports prop_get('threat-reports') end def threat_reports=(val) prop_set('threat-reports', val) end def url_filtering_reports prop_get('url-filtering-reports') end def url_filtering_reports=(val) prop_set('url-filtering-reports', val) end def traffic_reports prop_get('traffic-reports') end def traffic_reports=(val) prop_set('traffic-reports', val) end def gtp_reports prop_get('gtp-reports') end def gtp_reports=(val) prop_set('gtp-reports', val) end def sctp_reports prop_get('sctp-reports') end def sctp_reports=(val) prop_set('sctp-reports', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Security", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "node-config-ids"=> "DeviceSecurityRules1,DeviceSecurityRules2,DeviceSecurityRules3,DeviceSecurityRules4,DeviceSecurityRules5,DeviceSecurityRules6", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.nat-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"NAT", "help-topic"=>"nat_rules", "node-config-ids"=>"DeviceNATRules1,DeviceNATRules2,DeviceNATRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceQOSRules1,DeviceQOSRules2,DeviceQOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pbf-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.pbf-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Policy Based Forwarding", "node-config-ids"=>"DevicePBFRules1,DevicePBFRules2,DevicePBFRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Decryption", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "node-config-ids"=> "DeviceDecryptionRules1,DeviceDecryptionRules2,DeviceDecryptionRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspect-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "node-config-ids"=> "DeviceTunnelInspectRules1,DeviceTunnelInspectRules2,DeviceTunnelInspectRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Application Override", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "node-config-ids"=> "DeviceAppOverrideRules1,DeviceAppOverrideRules2,DeviceAppOverrideRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "node-config-ids"=> "DeviceAuthenticationRules1,DeviceAuthenticationRules2,DeviceAuthenticationRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DoS Protection", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "node-config-ids"=>"DeviceDOSRules1,DeviceDOSRules2,DeviceDOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN", "help-topic"=>"sdwan_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceSDWANRules1,DeviceSDWANRules2,DeviceSDWANRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "rule-hit-count-reset"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Rule Hit Count Reset", "help-topic"=>"rule_hit_count_reset", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def security_rulebase prop_get('security-rulebase') end def security_rulebase=(val) prop_set('security-rulebase', val) end def nat_rulebase prop_get('nat-rulebase') end def nat_rulebase=(val) prop_set('nat-rulebase', val) end def qos_rulebase prop_get('qos-rulebase') end def qos_rulebase=(val) prop_set('qos-rulebase', val) end def pbf_rulebase prop_get('pbf-rulebase') end def pbf_rulebase=(val) prop_set('pbf-rulebase', val) end def ssl_decryption_rulebase prop_get('ssl-decryption-rulebase') end def ssl_decryption_rulebase=(val) prop_set('ssl-decryption-rulebase', val) end def tunnel_inspect_rulebase prop_get('tunnel-inspect-rulebase') end def tunnel_inspect_rulebase=(val) prop_set('tunnel-inspect-rulebase', val) end def application_override_rulebase prop_get('application-override-rulebase') end def application_override_rulebase=(val) prop_set('application-override-rulebase', val) end def authentication_rulebase prop_get('authentication-rulebase') end def authentication_rulebase=(val) prop_set('authentication-rulebase', val) end def dos_rulebase prop_get('dos-rulebase') end def dos_rulebase=(val) prop_set('dos-rulebase', val) end def sdwan_rulebase prop_get('sdwan-rulebase') end def sdwan_rulebase=(val) prop_set('sdwan-rulebase', val) end def rule_hit_count_reset prop_get('rule-hit-count-reset') end def rule_hit_count_reset=(val) prop_set('rule-hit-count-reset', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end class GlobalProtect__12 < ConfigClass def has_multiple_values? false end def _section :'global-protect__12' end @props={"hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"HIP Objects", "node-config-ids"=>"HIPObjects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"HIP Profiles", "node-config-ids"=>"HIPProfiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def hip_objects prop_get('hip-objects') end def hip_objects=(val) prop_set('hip-objects', val) end def hip_profiles prop_get('hip-profiles') end def hip_profiles=(val) prop_set('hip-profiles', val) end end # class GlobalProtect__12 def global_protect__12 @subclasses['global-protect__12'] ||= GlobalProtect__12.new(parent_instance: self, create_children: @create_children) end class CustomObjects < ConfigClass def has_multiple_values? false end def _section :'custom-objects' end @props={"data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DataPatterns", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "spyware"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "node-config-ids"=>"CustomSpyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "node-config-ids"=>"CustomVulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-category"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Category", "help-topic"=>"custom_url_categories", "node-config-ids"=>"CustomURLCategory", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def data_patterns prop_get('data-patterns') end def data_patterns=(val) prop_set('data-patterns', val) end def spyware prop_get('spyware') end def spyware=(val) prop_set('spyware', val) end def vulnerability prop_get('vulnerability') end def vulnerability=(val) prop_set('vulnerability', val) end def url_category prop_get('url-category') end def url_category=(val) prop_set('url-category', val) end end # class CustomObjects def custom_objects @subclasses['custom-objects'] ||= CustomObjects.new(parent_instance: self, create_children: @create_children) end class SecurityProfiles < ConfigClass def has_multiple_values? false end def _section :'security-profiles' end @props={"antivirus"=> {"node-type"=>"element", "menu-tree-path"=>"Antivirus", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiVirusProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware"=> {"node-type"=>"element", "menu-tree-path"=>"Anti-Spyware", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiSpywareProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"VulnerabilityProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "menu-tree-path"=>"URL Filtering", "skip-display"=>"shared-gateway", "node-config-ids"=>"URLFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"FileBlocking", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis"=> {"node-type"=>"element", "menu-tree-path"=>"WildFire Analysis", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"WildFireAnalysis", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"DataFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection", "node-config-ids"=>"DoSProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"Mobile Network Protection", "node-config-ids"=>"GTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection", "node-config-ids"=>"SCTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def antivirus prop_get('antivirus') end def antivirus=(val) prop_set('antivirus', val) end def anti_spyware prop_get('anti-spyware') end def anti_spyware=(val) prop_set('anti-spyware', val) end def vulnerability_protection prop_get('vulnerability-protection') end def vulnerability_protection=(val) prop_set('vulnerability-protection', val) end def url_filtering prop_get('url-filtering') end def url_filtering=(val) prop_set('url-filtering', val) end def file_blocking prop_get('file-blocking') end def file_blocking=(val) prop_set('file-blocking', val) end def wildfire_analysis prop_get('wildfire-analysis') end def wildfire_analysis=(val) prop_set('wildfire-analysis', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def dos_protection prop_get('dos-protection') end def dos_protection=(val) prop_set('dos-protection', val) end def gtp_protection prop_get('gtp-protection') end def gtp_protection=(val) prop_set('gtp-protection', val) end def sctp_protection prop_get('sctp-protection') end def sctp_protection=(val) prop_set('sctp-protection', val) end end # class SecurityProfiles def security_profiles @subclasses['security-profiles'] ||= SecurityProfiles.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end @props={"decryption-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "menu-tree-path"=>"Decryption Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profile"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "menu-tree-path"=>"Forwarding Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionForwardingProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def decryption_profile prop_get('decryption-profile') end def decryption_profile=(val) prop_set('decryption-profile', val) end def decryption_forwarding_profile prop_get('decryption-forwarding-profile') end def decryption_forwarding_profile=(val) prop_set('decryption-forwarding-profile', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end @props={"sdwan-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Path Quality Profile", "node-config-ids"=>"SDWANProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Quality Profile", "node-config-ids"=>"SDWANSaaSQualityProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-dist-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic Distribution Profile", "node-config-ids"=>"SDWANDistProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Error Correction Profile", "node-config-ids"=>"SDWANErrorCorrectionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def sdwan_profile prop_get('sdwan-profile') end def sdwan_profile=(val) prop_set('sdwan-profile', val) end def sdwan_saas_quality_profile prop_get('sdwan-saas-quality-profile') end def sdwan_saas_quality_profile=(val) prop_set('sdwan-saas-quality-profile', val) end def sdwan_dist_profile prop_get('sdwan-dist-profile') end def sdwan_dist_profile=(val) prop_set('sdwan-dist-profile', val) end def sdwan_error_correction_profile prop_get('sdwan-error-correction-profile') end def sdwan_error_correction_profile=(val) prop_set('sdwan-error-correction-profile', val) end end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Address", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AddressGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Region", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUserGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Application", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationFilter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Service", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ServiceGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Tag", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-block-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Dynamic Lists", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "node-config-ids"=>"DynamicBlockList", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"SecurityProfileGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "node-config-ids"=>"LogForwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "node-config-ids"=>"AuthenticationObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Schedule", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def dynamic_block_lists prop_get('dynamic-block-lists') end def dynamic_block_lists=(val) prop_set('dynamic-block-lists', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding prop_get('log-forwarding') end def log_forwarding=(val) prop_set('log-forwarding', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Routing < ConfigClass def has_multiple_values? false end def _section :'routing' end class RoutingProfiles < ConfigClass def has_multiple_values? false end def _section :'routing-profiles' end @props={"bgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"routing_profiles_bgp", "menu-tree-path"=>"BGP", "node-config-ids"=>"RoutingProfilesBGP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def bgp prop_get('bgp') end def bgp=(val) prop_set('bgp', val) end end # class RoutingProfiles def routing_profiles @subclasses['routing-profiles'] ||= RoutingProfiles.new(parent_instance: self, create_children: @create_children) end @props={"logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"logical_routers", "node-config-ids"=>"LogicalRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end end # class Routing def routing @subclasses['routing'] ||= Routing.new(parent_instance: self, create_children: @create_children) end class GlobalProtect__11 < ConfigClass def has_multiple_values? false end def _section :'global-protect__11' end @props={"portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"portals_globalprotect", "node-config-ids"=>"GlobalProtectPortal", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gateways_globalprotect", "node-config-ids"=>"GlobalProtectGatewayVSYS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mdm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"MDM", "help-topic"=>"mdm_globalprotect", "node-config-ids"=>"GlobalProtectMDM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_apps", "node-config-ids"=>"GlobalProtectClientlessApp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_app_groups", "node-config-ids"=>"GlobalProtectClientlessAppGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def portals prop_get('portals') end def portals=(val) prop_set('portals', val) end def gateways prop_get('gateways') end def gateways=(val) prop_set('gateways', val) end def mdm prop_get('mdm') end def mdm=(val) prop_set('mdm', val) end def clientless_apps prop_get('clientless-apps') end def clientless_apps=(val) prop_set('clientless-apps', val) end def clientless_app_groups prop_get('clientless-app-groups') end def clientless_app_groups=(val) prop_set('clientless-app-groups', val) end end # class GlobalProtect__11 def global_protect__11 @subclasses['global-protect__11'] ||= GlobalProtect__11.new(parent_instance: self, create_children: @create_children) end class NetworkProfiles < ConfigClass def has_multiple_values? false end def _section :'network-profiles' end @props={"gp-app-ipsec-crypto__1"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.gp-app-ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GpAppIPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateways__2"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-gateways-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IKE Gateways", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKEGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto__3"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "menu-tree-path"=>"IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto__4"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "menu-tree-path"=>"IKE Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKECrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.tunnel-monitor-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Monitor", "help-topic"=>"tunnel_monitor_profiles", "node-config-ids"=>"MonitorProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-mgmt"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.interface-mgmt-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "node-config-ids"=>"InterfaceMgmt", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "node-config-ids"=>"ZoneProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Profile", "node-config-ids"=>"QoSProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Profile", "node-config-ids"=>"LLDPProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Profile", "node-config-ids"=>"BFDProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def gp_app_ipsec_crypto__1 prop_get('gp-app-ipsec-crypto__1') end def gp_app_ipsec_crypto__1=(val) prop_set('gp-app-ipsec-crypto__1', val) end def ike_gateways__2 prop_get('ike-gateways__2') end def ike_gateways__2=(val) prop_set('ike-gateways__2', val) end def ipsec_crypto__3 prop_get('ipsec-crypto__3') end def ipsec_crypto__3=(val) prop_set('ipsec-crypto__3', val) end def ike_crypto__4 prop_get('ike-crypto__4') end def ike_crypto__4=(val) prop_set('ike-crypto__4', val) end def tunnel_monitor prop_get('tunnel-monitor') end def tunnel_monitor=(val) prop_set('tunnel-monitor', val) end def interface_mgmt prop_get('interface-mgmt') end def interface_mgmt=(val) prop_set('interface-mgmt', val) end def zone_protection prop_get('zone-protection') end def zone_protection=(val) prop_set('zone-protection', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def lldp_profile prop_get('lldp-profile') end def lldp_profile=(val) prop_set('lldp-profile', val) end def bfd_profile prop_get('bfd-profile') end def bfd_profile=(val) prop_set('bfd-profile', val) end end # class NetworkProfiles def network_profiles @subclasses['network-profiles'] ||= NetworkProfiles.new(parent_instance: self, create_children: @create_children) end @props={"interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "node-config-ids"=>"Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Zones", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.vlans-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "node-config-ids"=>"VLAN", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualWires", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.network.vm.virtual-routers-disable=True", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__7"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.ipsec-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"IPSec Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecTunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__8"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.gre-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"GRE Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GRETunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dhcp-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP", "node-config-ids"=>"DHCP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxy"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dns-proxy-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxy", "node-config-ids"=>"DNSProxy", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "node-config-ids"=>"QoSInterface", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "node-config-ids"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profile", "node-config-ids"=>"SDWANInterfaceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def ipsec_tunnels__7 prop_get('ipsec-tunnels__7') end def ipsec_tunnels__7=(val) prop_set('ipsec-tunnels__7', val) end def gre_tunnels__8 prop_get('gre-tunnels__8') end def gre_tunnels__8=(val) prop_set('gre-tunnels__8', val) end def dhcp prop_get('dhcp') end def dhcp=(val) prop_set('dhcp', val) end def dns_proxy prop_get('dns-proxy') end def dns_proxy=(val) prop_set('dns-proxy', val) end def qos prop_get('qos') end def qos=(val) prop_set('qos', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def sdwan_interface_profile prop_get('sdwan-interface-profile') end def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ocsp-responder"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"OCSP Responder", "node-config-ids"=>"OCSPResponder", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-exclusion"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL Decryption Exclusion", "node-config-ids"=>"SslDecryptionExclusion", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ocsp_responder prop_get('ocsp-responder') end def ocsp_responder=(val) prop_set('ocsp-responder', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssl_decryption_exclusion prop_get('ssl-decryption-exclusion') end def ssl_decryption_exclusion=(val) prop_set('ssl-decryption-exclusion', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "iptag__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IP-Tag", "help-topic"=>"ip_tag_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "cc-alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "manage-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage Logs", "skip-menu-tree-display"=>"template", "help-topic"=>"manage_logs_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def user_id__3 prop_get('user-id__3') end def user_id__3=(val) prop_set('user-id__3', val) end def hipmatch__4 prop_get('hipmatch__4') end def hipmatch__4=(val) prop_set('hipmatch__4', val) end def globalprotect__5 prop_get('globalprotect__5') end def globalprotect__5=(val) prop_set('globalprotect__5', val) end def iptag__6 prop_get('iptag__6') end def iptag__6=(val) prop_set('iptag__6', val) end def correlation__7 prop_get('correlation__7') end def correlation__7=(val) prop_set('correlation__7', val) end def cc_alarm prop_get('cc-alarm') end def cc_alarm=(val) prop_set('cc-alarm', val) end def manage_log prop_get('manage-log') end def manage_log=(val) prop_set('manage-log', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "node-config-ids"=>"ServerProfileSNMPTrap", "menu-tree-path"=>"SNMP Trap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "netflow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"netflow_settings", "node-config-ids"=>"ServerProfileNetflow", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "node-config-ids"=>"ServerProfileRadius", "menu-tree-path"=>"RADIUS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "node-config-ids"=>"ServerProfileTacacs", "menu-tree-path"=>"TACACS+", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "node-config-ids"=>"ServerProfileKerberos", "skip-display"=>"fips-mode,cc-only-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "help-topic"=>"server_dns", "menu-tree-path"=>"DNS", "node-config-ids"=>"ServerProfileDNS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mfa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_mfa", "menu-tree-path"=>"Multi Factor Authentication", "node-config-ids"=>"ServerProfileMFA", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def netflow prop_get('netflow') end def netflow=(val) prop_set('netflow', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end def dns prop_get('dns') end def dns=(val) prop_set('dns', val) end def mfa prop_get('mfa') end def mfa=(val) prop_set('mfa', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end @props={"users"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_users", "node-config-ids"=>"LocalUsers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_user_groups", "node-config-ids"=>"LocalUserGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def users prop_get('users') end def users=(val) prop_set('users', val) end def user_groups prop_get('user-groups') end def user_groups=(val) prop_set('user-groups', val) end end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end @props={"high-availability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"HASetup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-fwd-card"=> {"node-type"=>"element", "node-config-ids"=>"LFCInterface", "menu-tree-path"=>"Log Forwarding Card", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"admin_accounts", "node-config-ids"=>"Administrator", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "admin-roles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AdminRoleHandler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "access-domain"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"AccessDomain", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_user_id", "node-config-ids"=> "UserIdCollector,ServerMonitor,IncludeExcludeNetwork,UserIdConnSecurity,UserIdAgent,TSAgent,GroupMapping", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=> "RDAgent,DataRedistributionCollector,DataRedistributionIPUserIncludeExcludeNetwork,DataRedistributionIPTagIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"VirtualSystem", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "shared-gateways"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"SharedGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-pages"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Response Pages", "node-config-ids"=>"ResponsePageTopLevel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scheduled-log-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_export", "node-config-ids"=>"ScheduledLogExport", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "global-protect-client__22"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Client", "prune-on"=>"vpn-disable-mode", "skip-display"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUpdates", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"license", "skip-display"=>"yes", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "support"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "master-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Master Key and Diagnostics", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def high_availability prop_get('high-availability') end def high_availability=(val) prop_set('high-availability', val) end def log_fwd_card prop_get('log-fwd-card') end def log_fwd_card=(val) prop_set('log-fwd-card', val) end def config_audit prop_get('config-audit') end def config_audit=(val) prop_set('config-audit', val) end def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def admin_roles prop_get('admin-roles') end def admin_roles=(val) prop_set('admin-roles', val) end def access_domain prop_get('access-domain') end def access_domain=(val) prop_set('access-domain', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end def shared_gateways prop_get('shared-gateways') end def shared_gateways=(val) prop_set('shared-gateways', val) end def block_pages prop_get('block-pages') end def block_pages=(val) prop_set('block-pages', val) end def scheduled_log_export prop_get('scheduled-log-export') end def scheduled_log_export=(val) prop_set('scheduled-log-export', val) end def software prop_get('software') end def software=(val) prop_set('software', val) end def global_protect_client__22 prop_get('global-protect-client__22') end def global_protect_client__22=(val) prop_set('global-protect-client__22', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end def support prop_get('support') end def support=(val) prop_set('support', val) end def master_key prop_get('master-key') end def master_key=(val) prop_set('master-key', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class ManagedDevices < ConfigClass def has_multiple_values? false end def _section :'managed-devices' end @props={"summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_manage_devices", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "health"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_devices_health", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "troubleshooting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"troubleshooting", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def summary prop_get('summary') end def summary=(val) prop_set('summary', val) end def health prop_get('health') end def health=(val) prop_set('health', val) end def troubleshooting prop_get('troubleshooting') end def troubleshooting=(val) prop_set('troubleshooting', val) end end # class ManagedDevices def managed_devices @subclasses['managed-devices'] ||= ManagedDevices.new(parent_instance: self, create_children: @create_children) end class Deployment < ConfigClass def has_multiple_values? false end def _section :'deployment' end @props={"software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "global-protect-client"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Client", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "plugins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_deployment_software", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def software prop_get('software') end def software=(val) prop_set('software', val) end def global_protect_client prop_get('global-protect-client') end def global_protect_client=(val) prop_set('global-protect-client', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def plugins prop_get('plugins') end def plugins=(val) prop_set('plugins', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end end # class Deployment def deployment @subclasses['deployment'] ||= Deployment.new(parent_instance: self, create_children: @create_children) end @props={"config-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_config_audit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "device-quarantine"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Device Quarantine", "help-topic"=>"panorama_device_quarantine", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_template", "node-config-ids"=>"Template", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_device_groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-recommendation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policy_recommendation", "menu-tree-path"=>"Policy Recommendation", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def config_audit prop_get('config-audit') end def config_audit=(val) prop_set('config-audit', val) end def device_quarantine prop_get('device-quarantine') end def device_quarantine=(val) prop_set('device-quarantine', val) end def templates prop_get('templates') end def templates=(val) prop_set('templates', val) end def device_groups prop_get('device-groups') end def device_groups=(val) prop_set('device-groups', val) end def policy_recommendation prop_get('policy-recommendation') end def policy_recommendation=(val) prop_set('policy-recommendation', val) end end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Privacy < ConfigClass def has_multiple_values? false end def _section :'privacy' end @props={"show-full-ip-addresses"=> {"node-type"=>"element", "menu-tree-path"=>"Show Full IP Addresses", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "show-user-names-in-logs-and-reports"=> {"node-type"=>"element", "menu-tree-path"=>"Show Username In Logs And Reports", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-pcap-files"=> {"node-type"=>"element", "menu-tree-path"=>"View PCAP Files", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def show_full_ip_addresses prop_get('show-full-ip-addresses') end def show_full_ip_addresses=(val) prop_set('show-full-ip-addresses', val) end def show_user_names_in_logs_and_reports prop_get('show-user-names-in-logs-and-reports') end def show_user_names_in_logs_and_reports=(val) prop_set('show-user-names-in-logs-and-reports', val) end def view_pcap_files prop_get('view-pcap-files') end def view_pcap_files=(val) prop_set('view-pcap-files', val) end end # class Privacy def privacy @subclasses['privacy'] ||= Privacy.new(parent_instance: self, create_children: @create_children) end class Save < ConfigClass def has_multiple_values? false end def _section :'save' end @props={"partial-save"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "save-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def partial_save prop_get('partial-save') end def partial_save=(val) prop_set('partial-save', val) end def save_for_other_admins prop_get('save-for-other-admins') end def save_for_other_admins=(val) prop_set('save-for-other-admins', val) end end # class Save def save @subclasses['save'] ||= Save.new(parent_instance: self, create_children: @create_children) end class Commit < ConfigClass def has_multiple_values? false end def _section :'commit' end @props={"panorama"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "device-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "collector-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "force-template-values"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def panorama prop_get('panorama') end def panorama=(val) prop_set('panorama', val) end def commit_for_other_admins prop_get('commit-for-other-admins') end def commit_for_other_admins=(val) prop_set('commit-for-other-admins', val) end def device_groups prop_get('device-groups') end def device_groups=(val) prop_set('device-groups', val) end def templates prop_get('templates') end def templates=(val) prop_set('templates', val) end def collector_groups prop_get('collector-groups') end def collector_groups=(val) prop_set('collector-groups', val) end def force_template_values prop_get('force-template-values') end def force_template_values=(val) prop_set('force-template-values', val) end end # class Commit def commit @subclasses['commit'] ||= Commit.new(parent_instance: self, create_children: @create_children) end class Global < ConfigClass def has_multiple_values? false end def _section :'global' end @props={"system-alarms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_alarms", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def system_alarms prop_get('system-alarms') end def system_alarms=(val) prop_set('system-alarms', val) end end # class Global def global @subclasses['global'] ||= Global.new(parent_instance: self, create_children: @create_children) end @props={"dashboard"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "acc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"ACC", "prune-on-sdb"=>"cfg.vm-license-type=vm50l", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tasks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def dashboard prop_get('dashboard') end def dashboard=(val) prop_set('dashboard', val) end def acc prop_get('acc') end def acc=(val) prop_set('acc', val) end def tasks prop_get('tasks') end def tasks=(val) prop_set('tasks', val) end end # class Webui def webui @subclasses['webui'] ||= Webui.new(parent_instance: self, create_children: @create_children) end class Restapi < ConfigClass def has_multiple_values? false end def _section :'restapi' end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"GlobalProtect HIP Objects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"GlobalProtect HIP Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "external-dynamic-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-spyware-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-vulnerability-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-url-categories"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"custom_url_categories", "menu-tree-path"=>"URL Category", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "antivirus-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Filtering Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"WildFire Analysis Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"GTP Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection Secuirty Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-enforcements"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-path-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-path-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Path Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-saas-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Saas Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-traffic-distribution-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-traffic-distribution-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Traffic Distribution Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-error-correction-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Error Correction Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def globalprotect_hip_objects prop_get('globalprotect-hip-objects') end def globalprotect_hip_objects=(val) prop_set('globalprotect-hip-objects', val) end def globalprotect_hip_profiles prop_get('globalprotect-hip-profiles') end def globalprotect_hip_profiles=(val) prop_set('globalprotect-hip-profiles', val) end def external_dynamic_lists prop_get('external-dynamic-lists') end def external_dynamic_lists=(val) prop_set('external-dynamic-lists', val) end def custom_data_patterns prop_get('custom-data-patterns') end def custom_data_patterns=(val) prop_set('custom-data-patterns', val) end def custom_spyware_signatures prop_get('custom-spyware-signatures') end def custom_spyware_signatures=(val) prop_set('custom-spyware-signatures', val) end def custom_vulnerability_signatures prop_get('custom-vulnerability-signatures') end def custom_vulnerability_signatures=(val) prop_set('custom-vulnerability-signatures', val) end def custom_url_categories prop_get('custom-url-categories') end def custom_url_categories=(val) prop_set('custom-url-categories', val) end def antivirus_security_profiles prop_get('antivirus-security-profiles') end def antivirus_security_profiles=(val) prop_set('antivirus-security-profiles', val) end def anti_spyware_security_profiles prop_get('anti-spyware-security-profiles') end def anti_spyware_security_profiles=(val) prop_set('anti-spyware-security-profiles', val) end def vulnerability_protection_security_profiles prop_get('vulnerability-protection-security-profiles') end def vulnerability_protection_security_profiles=(val) prop_set('vulnerability-protection-security-profiles', val) end def url_filtering_security_profiles prop_get('url-filtering-security-profiles') end def url_filtering_security_profiles=(val) prop_set('url-filtering-security-profiles', val) end def file_blocking_security_profiles prop_get('file-blocking-security-profiles') end def file_blocking_security_profiles=(val) prop_set('file-blocking-security-profiles', val) end def wildfire_analysis_security_profiles prop_get('wildfire-analysis-security-profiles') end def wildfire_analysis_security_profiles=(val) prop_set('wildfire-analysis-security-profiles', val) end def data_filtering_security_profiles prop_get('data-filtering-security-profiles') end def data_filtering_security_profiles=(val) prop_set('data-filtering-security-profiles', val) end def dos_protection_security_profiles prop_get('dos-protection-security-profiles') end def dos_protection_security_profiles=(val) prop_set('dos-protection-security-profiles', val) end def gtp_protection_security_profiles prop_get('gtp-protection-security-profiles') end def gtp_protection_security_profiles=(val) prop_set('gtp-protection-security-profiles', val) end def sctp_protection_security_profiles prop_get('sctp-protection-security-profiles') end def sctp_protection_security_profiles=(val) prop_set('sctp-protection-security-profiles', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding_profiles prop_get('log-forwarding-profiles') end def log_forwarding_profiles=(val) prop_set('log-forwarding-profiles', val) end def authentication_enforcements prop_get('authentication-enforcements') end def authentication_enforcements=(val) prop_set('authentication-enforcements', val) end def decryption_profiles prop_get('decryption-profiles') end def decryption_profiles=(val) prop_set('decryption-profiles', val) end def decryption_forwarding_profiles prop_get('decryption-forwarding-profiles') end def decryption_forwarding_profiles=(val) prop_set('decryption-forwarding-profiles', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end def sdwan_path_quality_profiles prop_get('sdwan-path-quality-profiles') end def sdwan_path_quality_profiles=(val) prop_set('sdwan-path-quality-profiles', val) end def sdwan_saas_quality_profiles prop_get('sdwan-saas-quality-profiles') end def sdwan_saas_quality_profiles=(val) prop_set('sdwan-saas-quality-profiles', val) end def sdwan_traffic_distribution_profiles prop_get('sdwan-traffic-distribution-profiles') end def sdwan_traffic_distribution_profiles=(val) prop_set('sdwan-traffic-distribution-profiles', val) end def sdwan_error_correction_profiles prop_get('sdwan-error-correction-profiles') end def sdwan_error_correction_profiles=(val) prop_set('sdwan-error-correction-profiles', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"nat_rules", "menu-tree-path"=>"NAT Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "menu-tree-path"=>"QoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-based-forwarding-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspection-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "menu-tree-path"=>"DoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"sdwan-rules", "menu-tree-path"=>"SD-WAN Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def security_rules prop_get('security-rules') end def security_rules=(val) prop_set('security-rules', val) end def nat_rules prop_get('nat-rules') end def nat_rules=(val) prop_set('nat-rules', val) end def qos_rules prop_get('qos-rules') end def qos_rules=(val) prop_set('qos-rules', val) end def policy_based_forwarding_rules prop_get('policy-based-forwarding-rules') end def policy_based_forwarding_rules=(val) prop_set('policy-based-forwarding-rules', val) end def decryption_rules prop_get('decryption-rules') end def decryption_rules=(val) prop_set('decryption-rules', val) end def tunnel_inspection_rules prop_get('tunnel-inspection-rules') end def tunnel_inspection_rules=(val) prop_set('tunnel-inspection-rules', val) end def application_override_rules prop_get('application-override-rules') end def application_override_rules=(val) prop_set('application-override-rules', val) end def authentication_rules prop_get('authentication-rules') end def authentication_rules=(val) prop_set('authentication-rules', val) end def dos_rules prop_get('dos-rules') end def dos_rules=(val) prop_set('dos-rules', val) end def sdwan_rules prop_get('sdwan-rules') end def sdwan_rules=(val) prop_set('sdwan-rules', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end @props={"aggregate-ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "menu-tree-path"=>"VLAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "loopback-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bgp-routing-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BGP Routing Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__12"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__13"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GRE Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-servers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-relays"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Relays", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxies"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxies", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Portals", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Gateways", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-mdm-servers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect MDM Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless Apps", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless App Groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-ipsec-crypto-network-profiles__24"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GlobalProtect IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateway-network-profiles__25"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Gateway Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto-network-profiles__26"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto-network-profiles__27"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_monitor_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-management-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def aggregate_ethernet_interfaces prop_get('aggregate-ethernet-interfaces') end def aggregate_ethernet_interfaces=(val) prop_set('aggregate-ethernet-interfaces', val) end def ethernet_interfaces prop_get('ethernet-interfaces') end def ethernet_interfaces=(val) prop_set('ethernet-interfaces', val) end def vlan_interfaces prop_get('vlan-interfaces') end def vlan_interfaces=(val) prop_set('vlan-interfaces', val) end def loopback_interfaces prop_get('loopback-interfaces') end def loopback_interfaces=(val) prop_set('loopback-interfaces', val) end def tunnel_interfaces prop_get('tunnel-interfaces') end def tunnel_interfaces=(val) prop_set('tunnel-interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end def bgp_routing_profiles prop_get('bgp-routing-profiles') end def bgp_routing_profiles=(val) prop_set('bgp-routing-profiles', val) end def ipsec_tunnels__12 prop_get('ipsec-tunnels__12') end def ipsec_tunnels__12=(val) prop_set('ipsec-tunnels__12', val) end def gre_tunnels__13 prop_get('gre-tunnels__13') end def gre_tunnels__13=(val) prop_set('gre-tunnels__13', val) end def dhcp_servers prop_get('dhcp-servers') end def dhcp_servers=(val) prop_set('dhcp-servers', val) end def dhcp_relays prop_get('dhcp-relays') end def dhcp_relays=(val) prop_set('dhcp-relays', val) end def dns_proxies prop_get('dns-proxies') end def dns_proxies=(val) prop_set('dns-proxies', val) end def globalprotect_portals prop_get('globalprotect-portals') end def globalprotect_portals=(val) prop_set('globalprotect-portals', val) end def globalprotect_gateways prop_get('globalprotect-gateways') end def globalprotect_gateways=(val) prop_set('globalprotect-gateways', val) end def globalprotect_mdm_servers prop_get('globalprotect-mdm-servers') end def globalprotect_mdm_servers=(val) prop_set('globalprotect-mdm-servers', val) end def globalprotect_clientless_apps prop_get('globalprotect-clientless-apps') end def globalprotect_clientless_apps=(val) prop_set('globalprotect-clientless-apps', val) end def globalprotect_clientless_app_groups prop_get('globalprotect-clientless-app-groups') end def globalprotect_clientless_app_groups=(val) prop_set('globalprotect-clientless-app-groups', val) end def qos_interfaces prop_get('qos-interfaces') end def qos_interfaces=(val) prop_set('qos-interfaces', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def globalprotect_ipsec_crypto_network_profiles__24 prop_get('globalprotect-ipsec-crypto-network-profiles__24') end def globalprotect_ipsec_crypto_network_profiles__24=(val) prop_set('globalprotect-ipsec-crypto-network-profiles__24', val) end def ike_gateway_network_profiles__25 prop_get('ike-gateway-network-profiles__25') end def ike_gateway_network_profiles__25=(val) prop_set('ike-gateway-network-profiles__25', val) end def ipsec_crypto_network_profiles__26 prop_get('ipsec-crypto-network-profiles__26') end def ipsec_crypto_network_profiles__26=(val) prop_set('ipsec-crypto-network-profiles__26', val) end def ike_crypto_network_profiles__27 prop_get('ike-crypto-network-profiles__27') end def ike_crypto_network_profiles__27=(val) prop_set('ike-crypto-network-profiles__27', val) end def tunnel_monitor_network_profiles prop_get('tunnel-monitor-network-profiles') end def tunnel_monitor_network_profiles=(val) prop_set('tunnel-monitor-network-profiles', val) end def interface_management_network_profiles prop_get('interface-management-network-profiles') end def interface_management_network_profiles=(val) prop_set('interface-management-network-profiles', val) end def zone_protection_network_profiles prop_get('zone-protection-network-profiles') end def zone_protection_network_profiles=(val) prop_set('zone-protection-network-profiles', val) end def qos_network_profiles prop_get('qos-network-profiles') end def qos_network_profiles=(val) prop_set('qos-network-profiles', val) end def lldp_network_profiles prop_get('lldp-network-profiles') end def lldp_network_profiles=(val) prop_set('lldp-network-profiles', val) end def bfd_network_profiles prop_get('bfd-network-profiles') end def bfd_network_profiles=(val) prop_set('bfd-network-profiles', val) end def sdwan_interfaces prop_get('sdwan-interfaces') end def sdwan_interfaces=(val) prop_set('sdwan-interfaces', val) end def sdwan_interface_profiles prop_get('sdwan-interface-profiles') end def sdwan_interface_profiles=(val) prop_set('sdwan-interface-profiles', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={"templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_template", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "template-stacks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_template", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"panorama_device_groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def templates prop_get('templates') end def templates=(val) prop_set('templates', val) end def template_stacks prop_get('template-stacks') end def template_stacks=(val) prop_set('template-stacks', val) end def device_groups prop_get('device-groups') end def device_groups=(val) prop_set('device-groups', val) end end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end @props={} end # class Restapi def restapi @subclasses['restapi'] ||= Restapi.new(parent_instance: self, create_children: @create_children) end @props={"device-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=> "Admin role to be used while context switching to the device as a device admin"}, "vsys-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=> "Admin role to be used while context switching to the device as a vsys admin"}} # Admin role to be used while context switching to the device as a device admin def device_admin_role prop_get('device-admin-role') end # Admin role to be used while context switching to the device as a device admin def device_admin_role=(val) prop_set('device-admin-role', val) end # Admin role to be used while context switching to the device as a vsys admin def vsys_admin_role prop_get('vsys-admin-role') end # Admin role to be used while context switching to the device as a vsys admin def vsys_admin_role=(val) prop_set('vsys-admin-role', val) end end # class DeviceGroup def device_group @subclasses['device-group'] ||= DeviceGroup.new(parent_instance: self, create_children: @create_children) end @props={} end # class Role def role if @create_children @subclasses['role'] ||= Role.new(parent_instance: self, create_children: @create_children) else Role.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdminRole def admin_role if @create_children @subclasses['admin-role'] ||= AdminRole.new(parent_instance: self, create_children: @create_children) else AdminRole.new(parent_instance: self) end end class ExternalList < XML::ConfigClass def has_multiple_values? true end def _section :'external-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class PredefinedIp < ConfigClass def has_multiple_values? false end def _section :'predefined-ip' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "uiHint-fieldLabel"=>"Source", "autocomplete"=>"yes", "memberof"=>["##/predefined/ip-block-list-v2/entry/@name"]}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end end # class PredefinedIp def predefined_ip @subclasses['predefined-ip'] ||= PredefinedIp.new(parent_instance: self, create_children: @create_children) end class PredefinedUrl < ConfigClass def has_multiple_values? false end def _section :'predefined-url' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "uiHint-fieldLabel"=>"Source", "autocomplete"=>"yes", "memberof"=>["##/predefined/url-predefined/entry/@name"]}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end end # class PredefinedUrl def predefined_url @subclasses['predefined-url'] ||= PredefinedUrl.new(parent_instance: self, create_children: @create_children) end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Domain < ConfigClass def has_multiple_values? false end def _section :'domain' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}, "expand-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable/Disable expand domain"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Enable/Disable expand domain def expand_domain prop_get('expand-domain') end # Enable/Disable expand domain def expand_domain=(val) prop_set('expand-domain', val) end end # class Domain def domain @subclasses['domain'] ||= Domain.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Imsi < ConfigClass def has_multiple_values? false end def _section :'imsi' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"34", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Imsi def imsi @subclasses['imsi'] ||= Imsi.new(parent_instance: self, create_children: @create_children) end class Imei < ConfigClass def has_multiple_values? false end def _section :'imei' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"32", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Imei def imei @subclasses['imei'] ||= Imei.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExternalList def external_list if @create_children @subclasses['external-list'] ||= ExternalList.new(parent_instance: self, create_children: @create_children) else ExternalList.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color19"}, {"value"=>"color20"}, {"value"=>"color21"}, {"value"=>"color22"}, {"value"=>"color23"}, {"value"=>"color24"}, {"value"=>"color25"}, {"value"=>"color26"}, {"value"=>"color27"}, {"value"=>"color28"}, {"value"=>"color29"}, {"value"=>"color30"}, {"value"=>"color31"}, {"value"=>"color32"}, {"value"=>"color33"}, {"value"=>"color34"}, {"value"=>"color35"}, {"value"=>"color36"}, {"value"=>"color37"}, {"value"=>"color38"}, {"value"=>"color39"}, {"value"=>"color40"}, {"value"=>"color41"}, {"value"=>"color42"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def color prop_get('color') end def color=(val) prop_set('color', val) end def comments prop_get('comments') end def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class AuthenticationObject < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-object' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"object name"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "authentication-method"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no-captive-portal", "enum"=> [{"value"=>"web-form"}, {"value"=>"no-captive-portal"}, {"value"=>"browser-challenge"}]}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "loose-membership"=>"yes", "help-string"=>"Authentication profile to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "default"=> "This is a customizable authentication message shown to the user to allow customers to provide authentication instructions based on the authentication rule in effect", "help-string"=>"Customizable message"}} # object name def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def authentication_method prop_get('authentication-method') end def authentication_method=(val) prop_set('authentication-method', val) end # Authentication profile to use for authentication. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for authentication. def authentication_profile=(val) prop_set('authentication-profile', val) end # Customizable message def message prop_get('message') end # Customizable message def message=(val) prop_set('message', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationObject def authentication_object if @create_children @subclasses['authentication-object'] ||= AuthenticationObject.new(parent_instance: self, create_children: @create_children) else AuthenticationObject.new(parent_instance: self) end end class PreRulebase < ConfigClass def has_multiple_values? false end def _section :'pre-rulebase' end class Security < ConfigClass def has_multiple_values? false end def _section :'security' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"application-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceImsi < XML::ConfigClass def has_multiple_values? true end def _section :'source-imsi' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["#config/shared/external-list/entry[type/imsi]/@name"], "multi-types"=> {"imsi"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMSI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImsi def source_imsi if @create_children @subclasses['source-imsi'] ||= SourceImsi.new(parent_instance: self, create_children: @create_children) else SourceImsi.new(parent_instance: self) end end class SourceImei < XML::ConfigClass def has_multiple_values? true end def _section :'source-imei' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"imei"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMEI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImei def source_imei if @create_children @subclasses['source-imei'] ||= SourceImei.new(parent_instance: self, create_children: @create_children) else SourceImei.new(parent_instance: self) end end class SourceNwSlice < XML::ConfigClass def has_multiple_values? true end def _section :'source-nw-slice' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"nssai"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any NSSAI ST value"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceNwSlice def source_nw_slice if @create_children @subclasses['source-nw-slice'] ||= SourceNwSlice.new(parent_instance: self, create_children: @create_children) else SourceNwSlice.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"any", "help-string"=>"any device"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end @props={"disable-server-response-inspection"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable inspection of server side traffic"}} # Disable inspection of server side traffic def disable_server_response_inspection prop_get('disable-server-response-inspection') end # Disable inspection of server side traffic def disable_server_response_inspection=(val) prop_set('disable-server-response-inspection', val) end end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class ProfileSetting < XML::ConfigClass def has_multiple_values? true end def _section :'profile-setting' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"47", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=>["#config/shared/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Group < XML::ConfigClass def has_multiple_values? true end def _section :'group' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profile-group/entry/@name", "#config/shared/profile-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Group def group if @create_children @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) else Group.new(parent_instance: self) end end @props={} end # class ProfileSetting def profile_setting if @create_children @subclasses['profile-setting'] ||= ProfileSetting.new(parent_instance: self, create_children: @create_children) else ProfileSetting.new(parent_instance: self) end end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Marking < XML::ConfigClass def has_multiple_values? true end def _section :'marking' end class FollowC2sFlow < ConfigClass def has_multiple_values? false end def _section :'follow-c2s-flow' end @props={} end # class FollowC2sFlow def follow_c2s_flow @subclasses['follow-c2s-flow'] ||= FollowC2sFlow.new(parent_instance: self, create_children: @create_children) end @props={"ip-dscp"=> {"node-type"=>"element", "help-string"=>"IP DSCP", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){6}$", "help-string"=> "specify codepoint in format of 'xxxxxx' where x is {0|1}"}, "enum"=> [{"value"=>"ef", "help-string"=>"codepoint 101110, expedited forwarding"}, {"value"=>"af11", "help-string"=>"codepoint 001010"}, {"value"=>"af12", "help-string"=>"codepoint 001100"}, {"value"=>"af13", "help-string"=>"codepoint 001110"}, {"value"=>"af21", "help-string"=>"codepoint 010010"}, {"value"=>"af22", "help-string"=>"codepoint 010100"}, {"value"=>"af23", "help-string"=>"codepoint 010110"}, {"value"=>"af31", "help-string"=>"codepoint 011010"}, {"value"=>"af32", "help-string"=>"codepoint 011100"}, {"value"=>"af33", "help-string"=>"codepoint 011110"}, {"value"=>"af41", "help-string"=>"codepoint 100010"}, {"value"=>"af42", "help-string"=>"codepoint 100100"}, {"value"=>"af43", "help-string"=>"codepoint 100110"}, {"value"=>"cs0", "help-string"=>"codepoint 000000"}, {"value"=>"cs1", "help-string"=>"codepoint 001000"}, {"value"=>"cs2", "help-string"=>"codepoint 010000"}, {"value"=>"cs3", "help-string"=>"codepoint 011000"}, {"value"=>"cs4", "help-string"=>"codepoint 100000"}, {"value"=>"cs5", "help-string"=>"codepoint 101000"}, {"value"=>"cs6", "help-string"=>"codepoint 110000"}, {"value"=>"cs7", "help-string"=>"codepoint 111000"}]}}, "ip-precedence"=> {"node-type"=>"element", "help-string"=>"IP Precedence", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){3}$", "help-string"=>"specify codepoint in format of 'xxx'"}, "enum"=> [{"value"=>"cs0", "help-string"=>"codepoint 000"}, {"value"=>"cs1", "help-string"=>"codepoint 001"}, {"value"=>"cs2", "help-string"=>"codepoint 010"}, {"value"=>"cs3", "help-string"=>"codepoint 011"}, {"value"=>"cs4", "help-string"=>"codepoint 100"}, {"value"=>"cs5", "help-string"=>"codepoint 101"}, {"value"=>"cs6", "help-string"=>"codepoint 110"}, {"value"=>"cs7", "help-string"=>"codepoint 111"}]}}} # IP DSCP def ip_dscp prop_get('ip-dscp') end # IP DSCP def ip_dscp=(val) prop_set('ip-dscp', val) end # IP Precedence def ip_precedence prop_get('ip-precedence') end # IP Precedence def ip_precedence=(val) prop_set('ip-precedence', val) end end # class Marking def marking if @create_children @subclasses['marking'] ||= Marking.new(parent_instance: self, create_children: @create_children) else Marking.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=> [{"value"=>"deny", "help-string"=>"Deny", "show-help-tip"=>"block, use App Deny action"}, {"value"=>"allow", "help-string"=>"Allow"}, {"value"=>"drop", "help-string"=>"Drop", "show-help-tip"=>"silent drop, send optional ICMP Unreachable"}, {"value"=>"reset-client", "help-string"=>"Reset client"}, {"value"=>"reset-server", "help-string"=>"Reset server"}, {"value"=>"reset-both", "help-string"=>"Reset both client and server"}]}, "icmp-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Send ICMP unreachable error when action is drop or reset"}, "rule-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"universal", "optional"=>"yes", "enum"=> [{"value"=>"universal", "help-string"=>"default", "show-help-tip"=>"Applies to both interzone and intrazone traffic."}, {"value"=>"intrazone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Only applies to traffic within one of the specified zones."}, {"value"=>"interzone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Applies to traffic from any source zone to any destination zone. It does not apply to traffic within a zone, even if the same zone is in source and destination columns."}]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable prop_get('icmp-unreachable') end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable=(val) prop_set('icmp-unreachable', val) end def rule_type prop_get('rule-type') end def rule_type=(val) prop_set('rule-type', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Security def security @subclasses['security'] ||= Security.new(parent_instance: self, create_children: @create_children) end class ApplicationOverride < ConfigClass def has_multiple_values? false end def _section :'application-override' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"tcp", "enum"=> [{"value"=>"tcp", "help-string"=>"TCP"}, {"value"=>"udp", "help-string"=>"UDP"}]}, "port"=>{"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0"}, "application"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def application prop_get('application') end def application=(val) prop_set('application', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class ApplicationOverride def application_override @subclasses['application-override'] ||= ApplicationOverride.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class SslForwardProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-forward-proxy' end @props={} end # class SslForwardProxy def ssl_forward_proxy @subclasses['ssl-forward-proxy'] ||= SslForwardProxy.new(parent_instance: self, create_children: @create_children) end class SshProxy < ConfigClass def has_multiple_values? false end def _section :'ssh-proxy' end @props={} end # class SshProxy def ssh_proxy @subclasses['ssh-proxy'] ||= SshProxy.new(parent_instance: self, create_children: @create_children) end @props={"ssl-inbound-inspection"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"31", "help-string"=>"SSL Inbound Inspection", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name", "#config/shared/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name"]}} # SSL Inbound Inspection def ssl_inbound_inspection prop_get('ssl-inbound-inspection') end # SSL Inbound Inspection def ssl_inbound_inspection=(val) prop_set('ssl-inbound-inspection', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no-decrypt", "enum"=> [{"value"=>"no-decrypt"}, {"value"=>"decrypt"}, {"value"=>"decrypt-and-forward"}]}, "profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"decryption profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/decryption/entry/@name", "#config/shared/profiles/decryption/entry/@name"]}, "forwarding-profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"forwarding profile", "optional"=>"yes"}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # decryption profile def profile prop_get('profile') end # decryption profile def profile=(val) prop_set('profile', val) end # forwarding profile def forwarding_profile prop_get('forwarding-profile') end # forwarding profile def forwarding_profile=(val) prop_set('forwarding-profile', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"service-http", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "authentication-enforcement"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "Authentication enforcement object to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-object/entry/@name", "#config/shared/authentication-object/entry/@name", "##/predefined/authentication-object/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding authentication logs", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/profiles/entry/@name", "#config/shared/log-settings/profiles/entry/@name"]}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"60", "help-string"=>"expiration timer (minutes)"}, "log-authentication-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Authentication enforcement object to use for authentication. def authentication_enforcement prop_get('authentication-enforcement') end # Authentication enforcement object to use for authentication. def authentication_enforcement=(val) prop_set('authentication-enforcement', val) end # Log setting for forwarding authentication logs def log_setting prop_get('log-setting') end # Log setting for forwarding authentication logs def log_setting=(val) prop_set('log-setting', val) end # expiration timer (minutes) def timeout prop_get('timeout') end # expiration timer (minutes) def timeout=(val) prop_set('timeout', val) end def log_authentication_timeout prop_get('log-authentication-timeout') end def log_authentication_timeout=(val) prop_set('log-authentication-timeout', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class DscpTos < XML::ConfigClass def has_multiple_values? true end def _section :'dscp-tos' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Codepoints < XML::ConfigClass def has_multiple_values? true end def _section :'codepoints' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ef < ConfigClass def has_multiple_values? false end def _section :'ef' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"ef", "help-string"=>"101110"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Ef def ef @subclasses['ef'] ||= Ef.new(parent_instance: self, create_children: @create_children) end class Af < ConfigClass def has_multiple_values? false end def _section :'af' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"af11", "help-string"=>"af11 (001010)"}, {"value"=>"af12", "help-string"=>"af12 (001100)"}, {"value"=>"af13", "help-string"=>"af13 (001110)"}, {"value"=>"af21", "help-string"=>"af21 (010010)"}, {"value"=>"af22", "help-string"=>"af22 (010100)"}, {"value"=>"af23", "help-string"=>"af23 (010110)"}, {"value"=>"af31", "help-string"=>"af31 (011010)"}, {"value"=>"af32", "help-string"=>"af32 (011100)"}, {"value"=>"af33", "help-string"=>"af33 (011110)"}, {"value"=>"af41", "help-string"=>"af41 (100010)"}, {"value"=>"af42", "help-string"=>"af42 (100100)"}, {"value"=>"af43", "help-string"=>"af43 (100110)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Af def af @subclasses['af'] ||= Af.new(parent_instance: self, create_children: @create_children) end class Cs < ConfigClass def has_multiple_values? false end def _section :'cs' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001000)"}, {"value"=>"cs2", "help-string"=>"cs2 (010000)"}, {"value"=>"cs3", "help-string"=>"cs3 (011000)"}, {"value"=>"cs4", "help-string"=>"cs4 (100000)"}, {"value"=>"cs5", "help-string"=>"cs5 (101000)"}, {"value"=>"cs6", "help-string"=>"cs6 (110000)"}, {"value"=>"cs7", "help-string"=>"cs7 (111000)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Cs def cs @subclasses['cs'] ||= Cs.new(parent_instance: self, create_children: @create_children) end class Tos < ConfigClass def has_multiple_values? false end def _section :'tos' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001)"}, {"value"=>"cs2", "help-string"=>"cs2 (010)"}, {"value"=>"cs3", "help-string"=>"cs3 (011)"}, {"value"=>"cs4", "help-string"=>"cs4 (100)"}, {"value"=>"cs5", "help-string"=>"cs5 (101)"}, {"value"=>"cs6", "help-string"=>"cs6 (110)"}, {"value"=>"cs7", "help-string"=>"cs7 (111)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Tos def tos @subclasses['tos'] ||= Tos.new(parent_instance: self, create_children: @create_children) end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end class Codepoint < ConfigClass def has_multiple_values? false end def _section :'codepoint' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "value"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"codepoint in format 'xxxxxx' where x is {0|1}"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('name') end # alphanumeric string [ 0-9a-zA-Z._-] def name=(val) prop_set('name', val) end # codepoint in format 'xxxxxx' where x is {0|1} def value prop_get('value') end # codepoint in format 'xxxxxx' where x is {0|1} def value=(val) prop_set('value', val) end end # class Codepoint def codepoint @subclasses['codepoint'] ||= Codepoint.new(parent_instance: self, create_children: @create_children) end @props={} end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"codepoint name, alphanumeric string [ 0-9a-zA-Z._-]"}} # codepoint name, alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Codepoints def codepoints if @create_children @subclasses['codepoints'] ||= Codepoints.new(parent_instance: self, create_children: @create_children) else Codepoints.new(parent_instance: self) end end @props={} end # class DscpTos def dscp_tos if @create_children @subclasses['dscp-tos'] ||= DscpTos.new(parent_instance: self, create_children: @create_children) else DscpTos.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"class"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"assigned class", "enum"=> [{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}, {"value"=>"4"}, {"value"=>"5"}, {"value"=>"6"}, {"value"=>"7"}, {"value"=>"8"}]}} # assigned class def class prop_get('class') end # assigned class def class=(val) prop_set('class', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/external]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31", "disallow-keyword-any"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceTranslation < ConfigClass def has_multiple_values? false end def _section :'source-translation' end class DynamicIpAndPort < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip-and-port' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.nat.rules.interface-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIpAndPort def dynamic_ip_and_port @subclasses['dynamic-ip-and-port'] ||= DynamicIpAndPort.new(parent_instance: self, create_children: @create_children) end class DynamicIp < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class Fallback < ConfigClass def has_multiple_values? false end def _section :'fallback' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Fallback def fallback @subclasses['fallback'] ||= Fallback.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIp def dynamic_ip @subclasses['dynamic-ip'] ||= DynamicIp.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "bi-directional"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"no", "help-string"=> "allow reverse translation from translated address to original address", "enum"=> [{"value"=>"yes", "help-string"=>"Bi-directional rule"}, {"value"=>"no", "help-string"=>"Uni-directional rule"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end # allow reverse translation from translated address to original address def bi_directional prop_get('bi-directional') end # allow reverse translation from translated address to original address def bi_directional=(val) prop_set('bi-directional', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class SourceTranslation def source_translation @subclasses['source-translation'] ||= SourceTranslation.new(parent_instance: self, create_children: @create_children) end class DestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'destination-translation' end class DnsRewrite < ConfigClass def has_multiple_values? false end def _section :'dns-rewrite' end @props={"direction"=> {"node-type"=>"element", "type"=>"enum", "default"=>"reverse", "help-string"=>"Select direction to apply DNS rewrite", "enum"=> [{"value"=>"reverse", "help-string"=>"Reverse translation"}, {"value"=>"forward", "help-string"=>"Forward translation"}]}} # Select direction to apply DNS rewrite def direction prop_get('direction') end # Select direction to apply DNS rewrite def direction=(val) prop_set('direction', val) end end # class DnsRewrite def dns_rewrite @subclasses['dns-rewrite'] ||= DnsRewrite.new(parent_instance: self, create_children: @create_children) end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end end # class DestinationTranslation def destination_translation @subclasses['destination-translation'] ||= DestinationTranslation.new(parent_instance: self, create_children: @create_children) end class DynamicDestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'dynamic-destination-translation' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}, "distribution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"round-robin", "help-string"=>"Distribution algorithm for destination address pool", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"source-ip-hash", "help-string"=>"Source IP Hash"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"least-sessions", "help-string"=>"Least Sessions"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end # Distribution algorithm for destination address pool def distribution prop_get('distribution') end # Distribution algorithm for destination address pool def distribution=(val) prop_set('distribution', val) end end # class DynamicDestinationTranslation def dynamic_destination_translation @subclasses['dynamic-destination-translation'] ||= DynamicDestinationTranslation.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "service"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "#config/shared/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service-group/entry/@name", "string('any')"]}, "nat-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"type of nat", "enum"=> [{"value"=>"ipv4", "help-string"=>"ipv4 nat"}, {"value"=>"nat64", "help-string"=>"translator between ipv6 and ipv4"}, {"value"=>"nptv6", "help-string"=>"network prefix translator for ipv6"}]}, "to-interface"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"any", "type"=>"multiple", "help-string"=>"Egress interface from route lookup", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/to-interface", "##/shared/post-rulebase/*/rules/entry/to-interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any interface"}]}}, "active-active-device-binding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"primary", "help-string"=>"Rule is bound to Active-Primary device"}, {"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def service prop_get('service') end def service=(val) prop_set('service', val) end # type of nat def nat_type prop_get('nat-type') end # type of nat def nat_type=(val) prop_set('nat-type', val) end # Egress interface from route lookup def to_interface prop_get('to-interface') end # Egress interface from route lookup def to_interface=(val) prop_set('to-interface', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class Pbf < ConfigClass def has_multiple_values? false end def _section :'pbf' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/interface/member", "##/shared/post-rulebase/*/rules/entry/from/interface/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[not(cachable='no')]/@name", "#config/shared/content-preview/application/entry[not(cachable='no')]/@name", "#dg-hier/pre-rulebase/application-override/rules/entry/application", "#dg-hier/post-rulebase/application-override/rules/entry/application"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Forward < ConfigClass def has_multiple_values? false end def _section :'forward' end class Nexthop < ConfigClass def has_multiple_values? false end def _section :'nexthop' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[fqdn]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN name configuration def fqdn prop_get('fqdn') end # nexthop address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class Nexthop def nexthop @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Monitoring profile associated with this rule", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/pbf/rules/entry/action/forward/monitor/profile", "##/shared/post-rulebase/pbf/rules/entry/action/forward/monitor/profile", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/profiles/monitor-profile/entry/@name"]}, "disable-if-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable this rule if nexthop/monitor ip is unreachable"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Monitor IP address"}} # Monitoring profile associated with this rule def profile prop_get('profile') end # Monitoring profile associated with this rule def profile=(val) prop_set('profile', val) end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable prop_get('disable-if-unreachable') end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable=(val) prop_set('disable-if-unreachable', val) end # Monitor IP address def ip_address prop_get('ip-address') end # Monitor IP address def ip_address=(val) prop_set('ip-address', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end @props={"egress-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/pbf/rules/entry/action/forward/egress-interface", "##/shared/post-rulebase/pbf/rules/entry/action/forward/egress-interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} # Interface to route packet to def egress_interface prop_get('egress-interface') end # Interface to route packet to def egress_interface=(val) prop_set('egress-interface', val) end end # class Forward def forward @subclasses['forward'] ||= Forward.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end class NoPbf < ConfigClass def has_multiple_values? false end def _section :'no-pbf' end @props={} end # class NoPbf def no_pbf @subclasses['no-pbf'] ||= NoPbf.new(parent_instance: self, create_children: @create_children) end @props={"forward-to-vsys"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Virtual system/Shared gateway to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/pbf/rules/entry/action/forward-to-vsys", "##/shared/post-rulebase/pbf/rules/entry/action/forward-to-vsys", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/shared-gateway/entry/@name"]}} # Virtual system/Shared gateway to route packet to def forward_to_vsys prop_get('forward-to-vsys') end # Virtual system/Shared gateway to route packet to def forward_to_vsys=(val) prop_set('forward-to-vsys', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end class EnforceSymmetricReturn < ConfigClass def has_multiple_values? false end def _section :'enforce-symmetric-return' end class NexthopAddressList < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop-address-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address"}} # IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NexthopAddressList def nexthop_address_list if @create_children @subclasses['nexthop-address-list'] ||= NexthopAddressList.new(parent_instance: self, create_children: @create_children) else NexthopAddressList.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable symmetric return"}} # Enable symmetric return def enabled prop_get('enabled') end # Enable symmetric return def enabled=(val) prop_set('enabled', val) end end # class EnforceSymmetricReturn def enforce_symmetric_return @subclasses['enforce-symmetric-return'] ||= EnforceSymmetricReturn.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "active-active-device-binding"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.pbf.rules.active-active-device-binding-disable=True", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Pbf def pbf @subclasses['pbf'] ||= Pbf.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"traffic-distribution-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan traffic distribution associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-traffic-distribution/entry/@name", "#config/shared/profiles/sdwan-traffic-distribution/entry/@name"]}, "app-failover-for-nat-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"keep-existing-link", "help-string"=>"For NAT sessions, specify whether to move to a better path", "enum"=> [{"value"=>"keep-existing-link", "help-string"=>"Keep session on existing link"}, {"value"=>"failover-to-better-path", "help-string"=>"Allow session failover to better path"}]}} # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile prop_get('traffic-distribution-profile') end # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile=(val) prop_set('traffic-distribution-profile', val) end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions prop_get('app-failover-for-nat-sessions') end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions=(val) prop_set('app-failover-for-nat-sessions', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "path-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan path quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-path-quality/entry/@name", "#config/shared/profiles/sdwan-path-quality/entry/@name"]}, "saas-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan saas quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-saas-quality/entry/@name", "#config/shared/profiles/sdwan-saas-quality/entry/@name"]}, "error-correction-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan error correction profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-error-correction/entry/@name", "#config/shared/profiles/sdwan-error-correction/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # attach sdwan path quality profile associated with this rule def path_quality_profile prop_get('path-quality-profile') end # attach sdwan path quality profile associated with this rule def path_quality_profile=(val) prop_set('path-quality-profile', val) end # attach sdwan saas quality profile associated with this rule def saas_quality_profile prop_get('saas-quality-profile') end # attach sdwan saas quality profile associated with this rule def saas_quality_profile=(val) prop_set('saas-quality-profile', val) end # attach sdwan error correction profile associated with this rule def error_correction_profile prop_get('error-correction-profile') end # attach sdwan error correction profile associated with this rule def error_correction_profile=(val) prop_set('error-correction-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end class Dos < ConfigClass def has_multiple_values? false end def _section :'dos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/interface/member", "##/shared/post-rulebase/*/rules/entry/from/interface/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer2]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class To < ConfigClass def has_multiple_values? false end def _section :'to' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name", "string('multicast')"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"multicast", "help-string"=>"multicast zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/to/interface/member", "##/shared/post-rulebase/*/rules/entry/to/interface/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer2]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer2]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class To def to @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Protection < ConfigClass def has_multiple_values? false end def _section :'protection' end class Aggregate < ConfigClass def has_multiple_values? false end def _section :'aggregate' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for aggregated protection", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/dos-protection/entry[type='aggregate']/@name"]}} # DoS profile to use for aggregated protection def profile prop_get('profile') end # DoS profile to use for aggregated protection def profile=(val) prop_set('profile', val) end end # class Aggregate def aggregate @subclasses['aggregate'] ||= Aggregate.new(parent_instance: self, create_children: @create_children) end class Classified < ConfigClass def has_multiple_values? false end def _section :'classified' end class ClassificationCriteria < ConfigClass def has_multiple_values? false end def _section :'classification-criteria' end @props={"address"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-ip-only", "help-string"=>"Parameters for IP Address based classification", "enum"=> [{"value"=>"source-ip-only"}, {"value"=>"destination-ip-only"}, {"value"=>"src-dest-ip-both"}]}} # Parameters for IP Address based classification def address prop_get('address') end # Parameters for IP Address based classification def address=(val) prop_set('address', val) end end # class ClassificationCriteria def classification_criteria @subclasses['classification-criteria'] ||= ClassificationCriteria.new(parent_instance: self, create_children: @create_children) end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for classified protection", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/dos-protection/entry[type='classified']/@name"]}} # DoS profile to use for classified protection def profile prop_get('profile') end # DoS profile to use for classified protection def profile=(val) prop_set('profile', val) end end # class Classified def classified @subclasses['classified'] ||= Classified.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protection def protection @subclasses['protection'] ||= Protection.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Protect < ConfigClass def has_multiple_values? false end def _section :'protect' end @props={} end # class Protect def protect @subclasses['protect'] ||= Protect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Dos def dos @subclasses['dos'] ||= Dos.new(parent_instance: self, create_children: @create_children) end class TunnelInspect < ConfigClass def has_multiple_values? false end def _section :'tunnel-inspect' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"gre", "help-string"=>"GRE"}, {"value"=>"vxlan", "help-string"=>"VXLAN"}, {"value"=>"ipsec", "help-string"=>"Non-encrypted IPSec"}, {"value"=>"gtp", "help-string"=>"GTP-U"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class TunnelId < ConfigClass def has_multiple_values? false end def _section :'tunnel-id' end class Vni < XML::ConfigClass def has_multiple_values? true end def _section :'vni' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "id"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"16777215"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('id') end def id=(val) prop_set('id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vni def vni if @create_children @subclasses['vni'] ||= Vni.new(parent_instance: self, create_children: @create_children) else Vni.new(parent_instance: self) end end @props={} end # class TunnelId def tunnel_id @subclasses['tunnel-id'] ||= TunnelId.new(parent_instance: self, create_children: @create_children) end class InspectOptions < ConfigClass def has_multiple_values? false end def _section :'inspect-options' end @props={"max-level-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"1", "help-string"=>"max level inspection", "enum"=> [{"value"=>"1", "help-string"=>"One level"}, {"value"=>"2", "help-string"=>"Two levels (tunnel in tunnel)"}]}, "drop-over-max"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-unknown-protocol"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-strict-checking"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "return-vxlan-to-source"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # max level inspection def max_level_inspection prop_get('max-level-inspection') end # max level inspection def max_level_inspection=(val) prop_set('max-level-inspection', val) end def drop_over_max prop_get('drop-over-max') end def drop_over_max=(val) prop_set('drop-over-max', val) end def drop_unknown_protocol prop_get('drop-unknown-protocol') end def drop_unknown_protocol=(val) prop_set('drop-unknown-protocol', val) end def drop_strict_checking prop_get('drop-strict-checking') end def drop_strict_checking=(val) prop_set('drop-strict-checking', val) end def return_vxlan_to_source prop_get('return-vxlan-to-source') end def return_vxlan_to_source=(val) prop_set('return-vxlan-to-source', val) end end # class InspectOptions def inspect_options @subclasses['inspect-options'] ||= InspectOptions.new(parent_instance: self, create_children: @create_children) end class ZoneAssign < ConfigClass def has_multiple_values? false end def _section :'zone-assign' end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end @props={} end # class ZoneAssign def zone_assign @subclasses['zone-assign'] ||= ZoneAssign.new(parent_instance: self, create_children: @create_children) end class MonitorOptions < ConfigClass def has_multiple_values? false end def _section :'monitor-options' end class LogSettingOverride < ConfigClass def has_multiple_values? false end def _section :'log-setting-override' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class LogSettingOverride def log_setting_override @subclasses['log-setting-override'] ||= LogSettingOverride.new(parent_instance: self, create_children: @create_children) end @props={"monitor-name"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([^0-9]*|[0-9]{1,14}([^0-9]|$)|[0-9]{17,})*$", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"31", "no-default"=>"yes", "help-string"=>"15 or 16 digit number not allowed"}, "monitor-id"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"16777215"}} # 15 or 16 digit number not allowed def monitor_name prop_get('monitor-name') end # 15 or 16 digit number not allowed def monitor_name=(val) prop_set('monitor-name', val) end def monitor_id prop_get('monitor-id') end def monitor_id=(val) prop_set('monitor-id', val) end end # class MonitorOptions def monitor_options @subclasses['monitor-options'] ||= MonitorOptions.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class TunnelInspect def tunnel_inspect @subclasses['tunnel-inspect'] ||= TunnelInspect.new(parent_instance: self, create_children: @create_children) end @props={} end # class PreRulebase def pre_rulebase @subclasses['pre-rulebase'] ||= PreRulebase.new(parent_instance: self, create_children: @create_children) end class PostRulebase < ConfigClass def has_multiple_values? false end def _section :'post-rulebase' end class Security < ConfigClass def has_multiple_values? false end def _section :'security' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"application-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceImsi < XML::ConfigClass def has_multiple_values? true end def _section :'source-imsi' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["#config/shared/external-list/entry[type/imsi]/@name"], "multi-types"=> {"imsi"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMSI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImsi def source_imsi if @create_children @subclasses['source-imsi'] ||= SourceImsi.new(parent_instance: self, create_children: @create_children) else SourceImsi.new(parent_instance: self) end end class SourceImei < XML::ConfigClass def has_multiple_values? true end def _section :'source-imei' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"imei"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMEI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImei def source_imei if @create_children @subclasses['source-imei'] ||= SourceImei.new(parent_instance: self, create_children: @create_children) else SourceImei.new(parent_instance: self) end end class SourceNwSlice < XML::ConfigClass def has_multiple_values? true end def _section :'source-nw-slice' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"nssai"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any NSSAI ST value"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceNwSlice def source_nw_slice if @create_children @subclasses['source-nw-slice'] ||= SourceNwSlice.new(parent_instance: self, create_children: @create_children) else SourceNwSlice.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"any", "help-string"=>"any device"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end @props={"disable-server-response-inspection"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable inspection of server side traffic"}} # Disable inspection of server side traffic def disable_server_response_inspection prop_get('disable-server-response-inspection') end # Disable inspection of server side traffic def disable_server_response_inspection=(val) prop_set('disable-server-response-inspection', val) end end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class ProfileSetting < XML::ConfigClass def has_multiple_values? true end def _section :'profile-setting' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"47", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=>["#config/shared/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Group < XML::ConfigClass def has_multiple_values? true end def _section :'group' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profile-group/entry/@name", "#config/shared/profile-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Group def group if @create_children @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) else Group.new(parent_instance: self) end end @props={} end # class ProfileSetting def profile_setting if @create_children @subclasses['profile-setting'] ||= ProfileSetting.new(parent_instance: self, create_children: @create_children) else ProfileSetting.new(parent_instance: self) end end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Marking < XML::ConfigClass def has_multiple_values? true end def _section :'marking' end class FollowC2sFlow < ConfigClass def has_multiple_values? false end def _section :'follow-c2s-flow' end @props={} end # class FollowC2sFlow def follow_c2s_flow @subclasses['follow-c2s-flow'] ||= FollowC2sFlow.new(parent_instance: self, create_children: @create_children) end @props={"ip-dscp"=> {"node-type"=>"element", "help-string"=>"IP DSCP", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){6}$", "help-string"=> "specify codepoint in format of 'xxxxxx' where x is {0|1}"}, "enum"=> [{"value"=>"ef", "help-string"=>"codepoint 101110, expedited forwarding"}, {"value"=>"af11", "help-string"=>"codepoint 001010"}, {"value"=>"af12", "help-string"=>"codepoint 001100"}, {"value"=>"af13", "help-string"=>"codepoint 001110"}, {"value"=>"af21", "help-string"=>"codepoint 010010"}, {"value"=>"af22", "help-string"=>"codepoint 010100"}, {"value"=>"af23", "help-string"=>"codepoint 010110"}, {"value"=>"af31", "help-string"=>"codepoint 011010"}, {"value"=>"af32", "help-string"=>"codepoint 011100"}, {"value"=>"af33", "help-string"=>"codepoint 011110"}, {"value"=>"af41", "help-string"=>"codepoint 100010"}, {"value"=>"af42", "help-string"=>"codepoint 100100"}, {"value"=>"af43", "help-string"=>"codepoint 100110"}, {"value"=>"cs0", "help-string"=>"codepoint 000000"}, {"value"=>"cs1", "help-string"=>"codepoint 001000"}, {"value"=>"cs2", "help-string"=>"codepoint 010000"}, {"value"=>"cs3", "help-string"=>"codepoint 011000"}, {"value"=>"cs4", "help-string"=>"codepoint 100000"}, {"value"=>"cs5", "help-string"=>"codepoint 101000"}, {"value"=>"cs6", "help-string"=>"codepoint 110000"}, {"value"=>"cs7", "help-string"=>"codepoint 111000"}]}}, "ip-precedence"=> {"node-type"=>"element", "help-string"=>"IP Precedence", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){3}$", "help-string"=>"specify codepoint in format of 'xxx'"}, "enum"=> [{"value"=>"cs0", "help-string"=>"codepoint 000"}, {"value"=>"cs1", "help-string"=>"codepoint 001"}, {"value"=>"cs2", "help-string"=>"codepoint 010"}, {"value"=>"cs3", "help-string"=>"codepoint 011"}, {"value"=>"cs4", "help-string"=>"codepoint 100"}, {"value"=>"cs5", "help-string"=>"codepoint 101"}, {"value"=>"cs6", "help-string"=>"codepoint 110"}, {"value"=>"cs7", "help-string"=>"codepoint 111"}]}}} # IP DSCP def ip_dscp prop_get('ip-dscp') end # IP DSCP def ip_dscp=(val) prop_set('ip-dscp', val) end # IP Precedence def ip_precedence prop_get('ip-precedence') end # IP Precedence def ip_precedence=(val) prop_set('ip-precedence', val) end end # class Marking def marking if @create_children @subclasses['marking'] ||= Marking.new(parent_instance: self, create_children: @create_children) else Marking.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=> [{"value"=>"deny", "help-string"=>"Deny", "show-help-tip"=>"block, use App Deny action"}, {"value"=>"allow", "help-string"=>"Allow"}, {"value"=>"drop", "help-string"=>"Drop", "show-help-tip"=>"silent drop, send optional ICMP Unreachable"}, {"value"=>"reset-client", "help-string"=>"Reset client"}, {"value"=>"reset-server", "help-string"=>"Reset server"}, {"value"=>"reset-both", "help-string"=>"Reset both client and server"}]}, "icmp-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Send ICMP unreachable error when action is drop or reset"}, "rule-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"universal", "optional"=>"yes", "enum"=> [{"value"=>"universal", "help-string"=>"default", "show-help-tip"=>"Applies to both interzone and intrazone traffic."}, {"value"=>"intrazone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Only applies to traffic within one of the specified zones."}, {"value"=>"interzone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Applies to traffic from any source zone to any destination zone. It does not apply to traffic within a zone, even if the same zone is in source and destination columns."}]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable prop_get('icmp-unreachable') end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable=(val) prop_set('icmp-unreachable', val) end def rule_type prop_get('rule-type') end def rule_type=(val) prop_set('rule-type', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Security def security @subclasses['security'] ||= Security.new(parent_instance: self, create_children: @create_children) end class DefaultSecurityRules < ConfigClass def has_multiple_values? false end def _section :'default-security-rules' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class ProfileSetting < XML::ConfigClass def has_multiple_values? true end def _section :'profile-setting' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"47", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=>["#config/shared/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Group < XML::ConfigClass def has_multiple_values? true end def _section :'group' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profile-group/entry/@name", "#config/shared/profile-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Group def group if @create_children @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) else Group.new(parent_instance: self) end end @props={} end # class ProfileSetting def profile_setting if @create_children @subclasses['profile-setting'] ||= ProfileSetting.new(parent_instance: self, create_children: @create_children) else ProfileSetting.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^(intrazone-default|interzone-default)$", "help-string"=>"intrazone-default or interzone-default"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=> [{"value"=>"deny", "help-string"=>"Deny"}, {"value"=>"allow", "help-string"=>"Allow"}, {"value"=>"drop", "help-string"=>"Drop", "show-help-tip"=>"silent drop, send optional ICMP Unreachable"}, {"value"=>"reset-client", "help-string"=>"Reset client"}, {"value"=>"reset-server", "help-string"=>"Reset server"}, {"value"=>"reset-both", "help-string"=>"Reset both client and server"}]}, "icmp-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Send ICMP unreachable error when action is drop or reset"}} # intrazone-default or interzone-default def name prop_get('@name') end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable prop_get('icmp-unreachable') end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable=(val) prop_set('icmp-unreachable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class DefaultSecurityRules def default_security_rules @subclasses['default-security-rules'] ||= DefaultSecurityRules.new(parent_instance: self, create_children: @create_children) end class ApplicationOverride < ConfigClass def has_multiple_values? false end def _section :'application-override' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"tcp", "enum"=> [{"value"=>"tcp", "help-string"=>"TCP"}, {"value"=>"udp", "help-string"=>"UDP"}]}, "port"=>{"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0"}, "application"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def application prop_get('application') end def application=(val) prop_set('application', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class ApplicationOverride def application_override @subclasses['application-override'] ||= ApplicationOverride.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class SslForwardProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-forward-proxy' end @props={} end # class SslForwardProxy def ssl_forward_proxy @subclasses['ssl-forward-proxy'] ||= SslForwardProxy.new(parent_instance: self, create_children: @create_children) end class SshProxy < ConfigClass def has_multiple_values? false end def _section :'ssh-proxy' end @props={} end # class SshProxy def ssh_proxy @subclasses['ssh-proxy'] ||= SshProxy.new(parent_instance: self, create_children: @create_children) end @props={"ssl-inbound-inspection"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"31", "help-string"=>"SSL Inbound Inspection", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name", "#config/shared/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name"]}} # SSL Inbound Inspection def ssl_inbound_inspection prop_get('ssl-inbound-inspection') end # SSL Inbound Inspection def ssl_inbound_inspection=(val) prop_set('ssl-inbound-inspection', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no-decrypt", "enum"=> [{"value"=>"no-decrypt"}, {"value"=>"decrypt"}, {"value"=>"decrypt-and-forward"}]}, "profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"decryption profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/decryption/entry/@name", "#config/shared/profiles/decryption/entry/@name"]}, "forwarding-profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"forwarding profile", "optional"=>"yes"}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # decryption profile def profile prop_get('profile') end # decryption profile def profile=(val) prop_set('profile', val) end # forwarding profile def forwarding_profile prop_get('forwarding-profile') end # forwarding profile def forwarding_profile=(val) prop_set('forwarding-profile', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"service-http", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "authentication-enforcement"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "Authentication enforcement object to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-object/entry/@name", "#config/shared/authentication-object/entry/@name", "##/predefined/authentication-object/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding authentication logs", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/profiles/entry/@name", "#config/shared/log-settings/profiles/entry/@name"]}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"60", "help-string"=>"expiration timer (minutes)"}, "log-authentication-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Authentication enforcement object to use for authentication. def authentication_enforcement prop_get('authentication-enforcement') end # Authentication enforcement object to use for authentication. def authentication_enforcement=(val) prop_set('authentication-enforcement', val) end # Log setting for forwarding authentication logs def log_setting prop_get('log-setting') end # Log setting for forwarding authentication logs def log_setting=(val) prop_set('log-setting', val) end # expiration timer (minutes) def timeout prop_get('timeout') end # expiration timer (minutes) def timeout=(val) prop_set('timeout', val) end def log_authentication_timeout prop_get('log-authentication-timeout') end def log_authentication_timeout=(val) prop_set('log-authentication-timeout', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class DscpTos < XML::ConfigClass def has_multiple_values? true end def _section :'dscp-tos' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Codepoints < XML::ConfigClass def has_multiple_values? true end def _section :'codepoints' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ef < ConfigClass def has_multiple_values? false end def _section :'ef' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"ef", "help-string"=>"101110"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Ef def ef @subclasses['ef'] ||= Ef.new(parent_instance: self, create_children: @create_children) end class Af < ConfigClass def has_multiple_values? false end def _section :'af' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"af11", "help-string"=>"af11 (001010)"}, {"value"=>"af12", "help-string"=>"af12 (001100)"}, {"value"=>"af13", "help-string"=>"af13 (001110)"}, {"value"=>"af21", "help-string"=>"af21 (010010)"}, {"value"=>"af22", "help-string"=>"af22 (010100)"}, {"value"=>"af23", "help-string"=>"af23 (010110)"}, {"value"=>"af31", "help-string"=>"af31 (011010)"}, {"value"=>"af32", "help-string"=>"af32 (011100)"}, {"value"=>"af33", "help-string"=>"af33 (011110)"}, {"value"=>"af41", "help-string"=>"af41 (100010)"}, {"value"=>"af42", "help-string"=>"af42 (100100)"}, {"value"=>"af43", "help-string"=>"af43 (100110)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Af def af @subclasses['af'] ||= Af.new(parent_instance: self, create_children: @create_children) end class Cs < ConfigClass def has_multiple_values? false end def _section :'cs' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001000)"}, {"value"=>"cs2", "help-string"=>"cs2 (010000)"}, {"value"=>"cs3", "help-string"=>"cs3 (011000)"}, {"value"=>"cs4", "help-string"=>"cs4 (100000)"}, {"value"=>"cs5", "help-string"=>"cs5 (101000)"}, {"value"=>"cs6", "help-string"=>"cs6 (110000)"}, {"value"=>"cs7", "help-string"=>"cs7 (111000)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Cs def cs @subclasses['cs'] ||= Cs.new(parent_instance: self, create_children: @create_children) end class Tos < ConfigClass def has_multiple_values? false end def _section :'tos' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001)"}, {"value"=>"cs2", "help-string"=>"cs2 (010)"}, {"value"=>"cs3", "help-string"=>"cs3 (011)"}, {"value"=>"cs4", "help-string"=>"cs4 (100)"}, {"value"=>"cs5", "help-string"=>"cs5 (101)"}, {"value"=>"cs6", "help-string"=>"cs6 (110)"}, {"value"=>"cs7", "help-string"=>"cs7 (111)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Tos def tos @subclasses['tos'] ||= Tos.new(parent_instance: self, create_children: @create_children) end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end class Codepoint < ConfigClass def has_multiple_values? false end def _section :'codepoint' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "value"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"codepoint in format 'xxxxxx' where x is {0|1}"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('name') end # alphanumeric string [ 0-9a-zA-Z._-] def name=(val) prop_set('name', val) end # codepoint in format 'xxxxxx' where x is {0|1} def value prop_get('value') end # codepoint in format 'xxxxxx' where x is {0|1} def value=(val) prop_set('value', val) end end # class Codepoint def codepoint @subclasses['codepoint'] ||= Codepoint.new(parent_instance: self, create_children: @create_children) end @props={} end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"codepoint name, alphanumeric string [ 0-9a-zA-Z._-]"}} # codepoint name, alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Codepoints def codepoints if @create_children @subclasses['codepoints'] ||= Codepoints.new(parent_instance: self, create_children: @create_children) else Codepoints.new(parent_instance: self) end end @props={} end # class DscpTos def dscp_tos if @create_children @subclasses['dscp-tos'] ||= DscpTos.new(parent_instance: self, create_children: @create_children) else DscpTos.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"class"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"assigned class", "enum"=> [{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}, {"value"=>"4"}, {"value"=>"5"}, {"value"=>"6"}, {"value"=>"7"}, {"value"=>"8"}]}} # assigned class def class prop_get('class') end # assigned class def class=(val) prop_set('class', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/external]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31", "disallow-keyword-any"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceTranslation < ConfigClass def has_multiple_values? false end def _section :'source-translation' end class DynamicIpAndPort < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip-and-port' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.nat.rules.interface-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIpAndPort def dynamic_ip_and_port @subclasses['dynamic-ip-and-port'] ||= DynamicIpAndPort.new(parent_instance: self, create_children: @create_children) end class DynamicIp < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class Fallback < ConfigClass def has_multiple_values? false end def _section :'fallback' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "##/shared/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Fallback def fallback @subclasses['fallback'] ||= Fallback.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIp def dynamic_ip @subclasses['dynamic-ip'] ||= DynamicIp.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "bi-directional"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"no", "help-string"=> "allow reverse translation from translated address to original address", "enum"=> [{"value"=>"yes", "help-string"=>"Bi-directional rule"}, {"value"=>"no", "help-string"=>"Uni-directional rule"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end # allow reverse translation from translated address to original address def bi_directional prop_get('bi-directional') end # allow reverse translation from translated address to original address def bi_directional=(val) prop_set('bi-directional', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class SourceTranslation def source_translation @subclasses['source-translation'] ||= SourceTranslation.new(parent_instance: self, create_children: @create_children) end class DestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'destination-translation' end class DnsRewrite < ConfigClass def has_multiple_values? false end def _section :'dns-rewrite' end @props={"direction"=> {"node-type"=>"element", "type"=>"enum", "default"=>"reverse", "help-string"=>"Select direction to apply DNS rewrite", "enum"=> [{"value"=>"reverse", "help-string"=>"Reverse translation"}, {"value"=>"forward", "help-string"=>"Forward translation"}]}} # Select direction to apply DNS rewrite def direction prop_get('direction') end # Select direction to apply DNS rewrite def direction=(val) prop_set('direction', val) end end # class DnsRewrite def dns_rewrite @subclasses['dns-rewrite'] ||= DnsRewrite.new(parent_instance: self, create_children: @create_children) end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end end # class DestinationTranslation def destination_translation @subclasses['destination-translation'] ||= DestinationTranslation.new(parent_instance: self, create_children: @create_children) end class DynamicDestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'dynamic-destination-translation' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}, "distribution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"round-robin", "help-string"=>"Distribution algorithm for destination address pool", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"source-ip-hash", "help-string"=>"Source IP Hash"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"least-sessions", "help-string"=>"Least Sessions"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end # Distribution algorithm for destination address pool def distribution prop_get('distribution') end # Distribution algorithm for destination address pool def distribution=(val) prop_set('distribution', val) end end # class DynamicDestinationTranslation def dynamic_destination_translation @subclasses['dynamic-destination-translation'] ||= DynamicDestinationTranslation.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "service"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "#config/shared/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service-group/entry/@name", "string('any')"]}, "nat-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"type of nat", "enum"=> [{"value"=>"ipv4", "help-string"=>"ipv4 nat"}, {"value"=>"nat64", "help-string"=>"translator between ipv6 and ipv4"}, {"value"=>"nptv6", "help-string"=>"network prefix translator for ipv6"}]}, "to-interface"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"any", "type"=>"multiple", "help-string"=>"Egress interface from route lookup", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/to-interface", "##/shared/post-rulebase/*/rules/entry/to-interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any interface"}]}}, "active-active-device-binding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"primary", "help-string"=>"Rule is bound to Active-Primary device"}, {"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def service prop_get('service') end def service=(val) prop_set('service', val) end # type of nat def nat_type prop_get('nat-type') end # type of nat def nat_type=(val) prop_set('nat-type', val) end # Egress interface from route lookup def to_interface prop_get('to-interface') end # Egress interface from route lookup def to_interface=(val) prop_set('to-interface', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class Pbf < ConfigClass def has_multiple_values? false end def _section :'pbf' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/interface/member", "##/shared/post-rulebase/*/rules/entry/from/interface/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[not(cachable='no')]/@name", "#config/shared/content-preview/application/entry[not(cachable='no')]/@name", "#dg-hier/pre-rulebase/application-override/rules/entry/application", "#dg-hier/post-rulebase/application-override/rules/entry/application"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Forward < ConfigClass def has_multiple_values? false end def _section :'forward' end class Nexthop < ConfigClass def has_multiple_values? false end def _section :'nexthop' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[fqdn]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN name configuration def fqdn prop_get('fqdn') end # nexthop address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class Nexthop def nexthop @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Monitoring profile associated with this rule", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/pbf/rules/entry/action/forward/monitor/profile", "##/shared/post-rulebase/pbf/rules/entry/action/forward/monitor/profile", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/profiles/monitor-profile/entry/@name"]}, "disable-if-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable this rule if nexthop/monitor ip is unreachable"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Monitor IP address"}} # Monitoring profile associated with this rule def profile prop_get('profile') end # Monitoring profile associated with this rule def profile=(val) prop_set('profile', val) end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable prop_get('disable-if-unreachable') end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable=(val) prop_set('disable-if-unreachable', val) end # Monitor IP address def ip_address prop_get('ip-address') end # Monitor IP address def ip_address=(val) prop_set('ip-address', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end @props={"egress-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/pbf/rules/entry/action/forward/egress-interface", "##/shared/post-rulebase/pbf/rules/entry/action/forward/egress-interface", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} # Interface to route packet to def egress_interface prop_get('egress-interface') end # Interface to route packet to def egress_interface=(val) prop_set('egress-interface', val) end end # class Forward def forward @subclasses['forward'] ||= Forward.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end class NoPbf < ConfigClass def has_multiple_values? false end def _section :'no-pbf' end @props={} end # class NoPbf def no_pbf @subclasses['no-pbf'] ||= NoPbf.new(parent_instance: self, create_children: @create_children) end @props={"forward-to-vsys"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Virtual system/Shared gateway to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/pbf/rules/entry/action/forward-to-vsys", "##/shared/post-rulebase/pbf/rules/entry/action/forward-to-vsys", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/shared-gateway/entry/@name"]}} # Virtual system/Shared gateway to route packet to def forward_to_vsys prop_get('forward-to-vsys') end # Virtual system/Shared gateway to route packet to def forward_to_vsys=(val) prop_set('forward-to-vsys', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end class EnforceSymmetricReturn < ConfigClass def has_multiple_values? false end def _section :'enforce-symmetric-return' end class NexthopAddressList < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop-address-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address"}} # IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NexthopAddressList def nexthop_address_list if @create_children @subclasses['nexthop-address-list'] ||= NexthopAddressList.new(parent_instance: self, create_children: @create_children) else NexthopAddressList.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable symmetric return"}} # Enable symmetric return def enabled prop_get('enabled') end # Enable symmetric return def enabled=(val) prop_set('enabled', val) end end # class EnforceSymmetricReturn def enforce_symmetric_return @subclasses['enforce-symmetric-return'] ||= EnforceSymmetricReturn.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "active-active-device-binding"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.pbf.rules.active-active-device-binding-disable=True", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Pbf def pbf @subclasses['pbf'] ||= Pbf.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"traffic-distribution-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan traffic distribution associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-traffic-distribution/entry/@name", "#config/shared/profiles/sdwan-traffic-distribution/entry/@name"]}, "app-failover-for-nat-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"keep-existing-link", "help-string"=>"For NAT sessions, specify whether to move to a better path", "enum"=> [{"value"=>"keep-existing-link", "help-string"=>"Keep session on existing link"}, {"value"=>"failover-to-better-path", "help-string"=>"Allow session failover to better path"}]}} # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile prop_get('traffic-distribution-profile') end # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile=(val) prop_set('traffic-distribution-profile', val) end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions prop_get('app-failover-for-nat-sessions') end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions=(val) prop_set('app-failover-for-nat-sessions', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "path-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan path quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-path-quality/entry/@name", "#config/shared/profiles/sdwan-path-quality/entry/@name"]}, "saas-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan saas quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-saas-quality/entry/@name", "#config/shared/profiles/sdwan-saas-quality/entry/@name"]}, "error-correction-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan error correction profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-error-correction/entry/@name", "#config/shared/profiles/sdwan-error-correction/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # attach sdwan path quality profile associated with this rule def path_quality_profile prop_get('path-quality-profile') end # attach sdwan path quality profile associated with this rule def path_quality_profile=(val) prop_set('path-quality-profile', val) end # attach sdwan saas quality profile associated with this rule def saas_quality_profile prop_get('saas-quality-profile') end # attach sdwan saas quality profile associated with this rule def saas_quality_profile=(val) prop_set('saas-quality-profile', val) end # attach sdwan error correction profile associated with this rule def error_correction_profile prop_get('error-correction-profile') end # attach sdwan error correction profile associated with this rule def error_correction_profile=(val) prop_set('error-correction-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end class Dos < ConfigClass def has_multiple_values? false end def _section :'dos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/interface/member", "##/shared/post-rulebase/*/rules/entry/from/interface/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer2]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class To < ConfigClass def has_multiple_values? false end def _section :'to' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name", "string('multicast')"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"multicast", "help-string"=>"multicast zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/to/interface/member", "##/shared/post-rulebase/*/rules/entry/to/interface/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/vlan/units/entry/@name", "string('vlan')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/loopback/units/entry/@name", "string('loopback')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/tunnel/units/entry/@name", "string('tunnel')", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/ethernet/entry[layer2]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/aggregate-ethernet/entry[layer2]/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class To def to @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Protection < ConfigClass def has_multiple_values? false end def _section :'protection' end class Aggregate < ConfigClass def has_multiple_values? false end def _section :'aggregate' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for aggregated protection", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/dos-protection/entry[type='aggregate']/@name"]}} # DoS profile to use for aggregated protection def profile prop_get('profile') end # DoS profile to use for aggregated protection def profile=(val) prop_set('profile', val) end end # class Aggregate def aggregate @subclasses['aggregate'] ||= Aggregate.new(parent_instance: self, create_children: @create_children) end class Classified < ConfigClass def has_multiple_values? false end def _section :'classified' end class ClassificationCriteria < ConfigClass def has_multiple_values? false end def _section :'classification-criteria' end @props={"address"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-ip-only", "help-string"=>"Parameters for IP Address based classification", "enum"=> [{"value"=>"source-ip-only"}, {"value"=>"destination-ip-only"}, {"value"=>"src-dest-ip-both"}]}} # Parameters for IP Address based classification def address prop_get('address') end # Parameters for IP Address based classification def address=(val) prop_set('address', val) end end # class ClassificationCriteria def classification_criteria @subclasses['classification-criteria'] ||= ClassificationCriteria.new(parent_instance: self, create_children: @create_children) end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for classified protection", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/dos-protection/entry[type='classified']/@name"]}} # DoS profile to use for classified protection def profile prop_get('profile') end # DoS profile to use for classified protection def profile=(val) prop_set('profile', val) end end # class Classified def classified @subclasses['classified'] ||= Classified.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protection def protection @subclasses['protection'] ||= Protection.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Protect < ConfigClass def has_multiple_values? false end def _section :'protect' end @props={} end # class Protect def protect @subclasses['protect'] ||= Protect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Dos def dos @subclasses['dos'] ||= Dos.new(parent_instance: self, create_children: @create_children) end class TunnelInspect < ConfigClass def has_multiple_values? false end def _section :'tunnel-inspect' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/device-group/entry/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/vsys/entry/tags/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/shared/local-user-database/user-group/entry/@name", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/local-user-database/user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#config/shared/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"gre", "help-string"=>"GRE"}, {"value"=>"vxlan", "help-string"=>"VXLAN"}, {"value"=>"ipsec", "help-string"=>"Non-encrypted IPSec"}, {"value"=>"gtp", "help-string"=>"GTP-U"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class TunnelId < ConfigClass def has_multiple_values? false end def _section :'tunnel-id' end class Vni < XML::ConfigClass def has_multiple_values? true end def _section :'vni' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "id"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"16777215"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('id') end def id=(val) prop_set('id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vni def vni if @create_children @subclasses['vni'] ||= Vni.new(parent_instance: self, create_children: @create_children) else Vni.new(parent_instance: self) end end @props={} end # class TunnelId def tunnel_id @subclasses['tunnel-id'] ||= TunnelId.new(parent_instance: self, create_children: @create_children) end class InspectOptions < ConfigClass def has_multiple_values? false end def _section :'inspect-options' end @props={"max-level-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"1", "help-string"=>"max level inspection", "enum"=> [{"value"=>"1", "help-string"=>"One level"}, {"value"=>"2", "help-string"=>"Two levels (tunnel in tunnel)"}]}, "drop-over-max"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-unknown-protocol"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-strict-checking"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "return-vxlan-to-source"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # max level inspection def max_level_inspection prop_get('max-level-inspection') end # max level inspection def max_level_inspection=(val) prop_set('max-level-inspection', val) end def drop_over_max prop_get('drop-over-max') end def drop_over_max=(val) prop_set('drop-over-max', val) end def drop_unknown_protocol prop_get('drop-unknown-protocol') end def drop_unknown_protocol=(val) prop_set('drop-unknown-protocol', val) end def drop_strict_checking prop_get('drop-strict-checking') end def drop_strict_checking=(val) prop_set('drop-strict-checking', val) end def return_vxlan_to_source prop_get('return-vxlan-to-source') end def return_vxlan_to_source=(val) prop_set('return-vxlan-to-source', val) end end # class InspectOptions def inspect_options @subclasses['inspect-options'] ||= InspectOptions.new(parent_instance: self, create_children: @create_children) end class ZoneAssign < ConfigClass def has_multiple_values? false end def _section :'zone-assign' end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "##/devices/entry/template/entry[devices/entry]/config/devices/entry/vsys/entry/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end @props={} end # class ZoneAssign def zone_assign @subclasses['zone-assign'] ||= ZoneAssign.new(parent_instance: self, create_children: @create_children) end class MonitorOptions < ConfigClass def has_multiple_values? false end def _section :'monitor-options' end class LogSettingOverride < ConfigClass def has_multiple_values? false end def _section :'log-setting-override' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class LogSettingOverride def log_setting_override @subclasses['log-setting-override'] ||= LogSettingOverride.new(parent_instance: self, create_children: @create_children) end @props={"monitor-name"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([^0-9]*|[0-9]{1,14}([^0-9]|$)|[0-9]{17,})*$", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"31", "no-default"=>"yes", "help-string"=>"15 or 16 digit number not allowed"}, "monitor-id"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"16777215"}} # 15 or 16 digit number not allowed def monitor_name prop_get('monitor-name') end # 15 or 16 digit number not allowed def monitor_name=(val) prop_set('monitor-name', val) end def monitor_id prop_get('monitor-id') end def monitor_id=(val) prop_set('monitor-id', val) end end # class MonitorOptions def monitor_options @subclasses['monitor-options'] ||= MonitorOptions.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class TunnelInspect def tunnel_inspect @subclasses['tunnel-inspect'] ||= TunnelInspect.new(parent_instance: self, create_children: @create_children) end @props={} end # class PostRulebase def post_rulebase @subclasses['post-rulebase'] ||= PostRulebase.new(parent_instance: self, create_children: @create_children) end @props={} end # class Shared def shared @subclasses['shared'] ||= Shared.new(parent_instance: self, create_children: @create_children) end class MgtConfig < ConfigClass def has_multiple_values? false end def _section :'mgt-config' end class PasswordComplexity < ConfigClass def has_multiple_values? false end def _section :'password-complexity' end class PasswordChange < ConfigClass def has_multiple_values? false end def _section :'password-change' end @props={"expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"365", "default"=>"0", "help-string"=>"Password expiry days"}, "expiration-warning-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password expiry warning period"}, "post-expiration-admin-login-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3", "default"=>"0", "help-string"=>"Password post-expiry admin login count"}, "post-expiration-grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password post-expiry grace period"}} # Password expiry days def expiration_period prop_get('expiration-period') end # Password expiry days def expiration_period=(val) prop_set('expiration-period', val) end # Password expiry warning period def expiration_warning_period prop_get('expiration-warning-period') end # Password expiry warning period def expiration_warning_period=(val) prop_set('expiration-warning-period', val) end # Password post-expiry admin login count def post_expiration_admin_login_count prop_get('post-expiration-admin-login-count') end # Password post-expiry admin login count def post_expiration_admin_login_count=(val) prop_set('post-expiration-admin-login-count', val) end # Password post-expiry grace period def post_expiration_grace_period prop_get('post-expiration-grace-period') end # Password post-expiry grace period def post_expiration_grace_period=(val) prop_set('post-expiration-grace-period', val) end end # class PasswordChange def password_change @subclasses['password-change'] ||= PasswordChange.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable minimal password complexity enforcement"}, "block-username-inclusion"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Block inclusion of username and it's reverse"}, "password-change-on-first-login"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Password must change on first time login"}, "minimum-length__5"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "type"=>"rangedint", "min"=>"6", "max"=>"15", "optional"=>"yes", "default"=>"6", "help-string"=>"Minimum password length"}, "minimum-length__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum password length"}, "minimum-uppercase-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum uppercase letters in the password"}, "minimum-lowercase-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum lowercase letters in the password"}, "minimum-numeric-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum numeric(0-9) letters in the password"}, "minimum-special-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "default"=>"0", "optional"=>"yes", "help-string"=> "Minimum special characters(non-alphanumeric) in the password"}, "block-repeated-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "default"=>"0", "optional"=>"yes", "help-string"=>"Block repeated characters count"}, "password-history-count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"150", "default"=>"0", "optional"=>"yes", "help-string"=>"Save password history for password changes"}, "new-password-differs-by-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"New Password must differ by the count chars"}, "password-change-period-block"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"365", "optional"=>"yes", "default"=>"0", "help-string"=>"Password change block period"}} # Enable minimal password complexity enforcement def enabled prop_get('enabled') end # Enable minimal password complexity enforcement def enabled=(val) prop_set('enabled', val) end # Block inclusion of username and it's reverse def block_username_inclusion prop_get('block-username-inclusion') end # Block inclusion of username and it's reverse def block_username_inclusion=(val) prop_set('block-username-inclusion', val) end # Password must change on first time login def password_change_on_first_login prop_get('password-change-on-first-login') end # Password must change on first time login def password_change_on_first_login=(val) prop_set('password-change-on-first-login', val) end # Minimum password length def minimum_length__5 prop_get('minimum-length__5') end # Minimum password length def minimum_length__5=(val) prop_set('minimum-length__5', val) end # Minimum password length def minimum_length__6 prop_get('minimum-length__6') end # Minimum password length def minimum_length__6=(val) prop_set('minimum-length__6', val) end # Minimum uppercase letters in the password def minimum_uppercase_letters prop_get('minimum-uppercase-letters') end # Minimum uppercase letters in the password def minimum_uppercase_letters=(val) prop_set('minimum-uppercase-letters', val) end # Minimum lowercase letters in the password def minimum_lowercase_letters prop_get('minimum-lowercase-letters') end # Minimum lowercase letters in the password def minimum_lowercase_letters=(val) prop_set('minimum-lowercase-letters', val) end # Minimum numeric(0-9) letters in the password def minimum_numeric_letters prop_get('minimum-numeric-letters') end # Minimum numeric(0-9) letters in the password def minimum_numeric_letters=(val) prop_set('minimum-numeric-letters', val) end # Minimum special characters(non-alphanumeric) in the password def minimum_special_characters prop_get('minimum-special-characters') end # Minimum special characters(non-alphanumeric) in the password def minimum_special_characters=(val) prop_set('minimum-special-characters', val) end # Block repeated characters count def block_repeated_characters prop_get('block-repeated-characters') end # Block repeated characters count def block_repeated_characters=(val) prop_set('block-repeated-characters', val) end # Save password history for password changes def password_history_count prop_get('password-history-count') end # Save password history for password changes def password_history_count=(val) prop_set('password-history-count', val) end # New Password must differ by the count chars def new_password_differs_by_characters prop_get('new-password-differs-by-characters') end # New Password must differ by the count chars def new_password_differs_by_characters=(val) prop_set('new-password-differs-by-characters', val) end # Password change block period def password_change_period_block prop_get('password-change-period-block') end # Password change block period def password_change_period_block=(val) prop_set('password-change-period-block', val) end end # class PasswordComplexity def password_complexity @subclasses['password-complexity'] ||= PasswordComplexity.new(parent_instance: self, create_children: @create_children) end class PasswordProfile < XML::ConfigClass def has_multiple_values? true end def _section :'password-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PasswordChange < ConfigClass def has_multiple_values? false end def _section :'password-change' end @props={"expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"365", "default"=>"0", "help-string"=>"Password expiry days"}, "expiration-warning-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password expiry warning period"}, "post-expiration-admin-login-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3", "default"=>"0", "help-string"=>"Password post-expiry admin login count"}, "post-expiration-grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password post-expiry grace period"}} # Password expiry days def expiration_period prop_get('expiration-period') end # Password expiry days def expiration_period=(val) prop_set('expiration-period', val) end # Password expiry warning period def expiration_warning_period prop_get('expiration-warning-period') end # Password expiry warning period def expiration_warning_period=(val) prop_set('expiration-warning-period', val) end # Password post-expiry admin login count def post_expiration_admin_login_count prop_get('post-expiration-admin-login-count') end # Password post-expiry admin login count def post_expiration_admin_login_count=(val) prop_set('post-expiration-admin-login-count', val) end # Password post-expiry grace period def post_expiration_grace_period prop_get('post-expiration-grace-period') end # Password post-expiry grace period def post_expiration_grace_period=(val) prop_set('post-expiration-grace-period', val) end end # class PasswordChange def password_change @subclasses['password-change'] ||= PasswordChange.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[A-Za-z][[A-Za-z0-9._-]*$", "help-string"=>"Alphanumeric string starting with an Alphabet"}} # Alphanumeric string starting with an Alphabet def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PasswordProfile def password_profile if @create_children @subclasses['password-profile'] ||= PasswordProfile.new(parent_instance: self, create_children: @create_children) else PasswordProfile.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Preferences < ConfigClass def has_multiple_values? false end def _section :'preferences' end class SavedLogQuery < ConfigClass def has_multiple_values? false end def _section :'saved-log-query' end class Unified < XML::ConfigClass def has_multiple_values? true end def _section :'unified' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Unified def unified if @create_children @subclasses['unified'] ||= Unified.new(parent_instance: self, create_children: @create_children) else Unified.new(parent_instance: self) end end class Traffic < XML::ConfigClass def has_multiple_values? true end def _section :'traffic' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Traffic def traffic if @create_children @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) else Traffic.new(parent_instance: self) end end class Threat < XML::ConfigClass def has_multiple_values? true end def _section :'threat' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Threat def threat if @create_children @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) else Threat.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Url < XML::ConfigClass def has_multiple_values? true end def _section :'url' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Url def url if @create_children @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) else Url.new(parent_instance: self) end end class Data < XML::ConfigClass def has_multiple_values? true end def _section :'data' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Data def data if @create_children @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) else Data.new(parent_instance: self) end end class Config < XML::ConfigClass def has_multiple_values? true end def _section :'config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Config def config if @create_children @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) else Config.new(parent_instance: self) end end class System < XML::ConfigClass def has_multiple_values? true end def _section :'system' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class System def system if @create_children @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) else System.new(parent_instance: self) end end class Wildfire < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Wildfire def wildfire if @create_children @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) else Wildfire.new(parent_instance: self) end end class Hipmatch < XML::ConfigClass def has_multiple_values? true end def _section :'hipmatch' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Hipmatch def hipmatch if @create_children @subclasses['hipmatch'] ||= Hipmatch.new(parent_instance: self, create_children: @create_children) else Hipmatch.new(parent_instance: self) end end class Corr < XML::ConfigClass def has_multiple_values? true end def _section :'corr' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Corr def corr if @create_children @subclasses['corr'] ||= Corr.new(parent_instance: self, create_children: @create_children) else Corr.new(parent_instance: self) end end class Tunnel < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tunnel def tunnel if @create_children @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) else Tunnel.new(parent_instance: self) end end class Userid < XML::ConfigClass def has_multiple_values? true end def _section :'userid' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Userid def userid if @create_children @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) else Userid.new(parent_instance: self) end end class Auth < XML::ConfigClass def has_multiple_values? true end def _section :'auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Auth def auth if @create_children @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) else Auth.new(parent_instance: self) end end class Globalprotect < XML::ConfigClass def has_multiple_values? true end def _section :'globalprotect' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Globalprotect def globalprotect if @create_children @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) else Globalprotect.new(parent_instance: self) end end class Decryption < XML::ConfigClass def has_multiple_values? true end def _section :'decryption' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decryption def decryption if @create_children @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) else Decryption.new(parent_instance: self) end end @props={} end # class SavedLogQuery def saved_log_query @subclasses['saved-log-query'] ||= SavedLogQuery.new(parent_instance: self, create_children: @create_children) end @props={"disable-dns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def disable_dns prop_get('disable-dns') end def disable_dns=(val) prop_set('disable-dns', val) end end # class Preferences def preferences @subclasses['preferences'] ||= Preferences.new(parent_instance: self, create_children: @create_children) end class Permissions < XML::ConfigClass def has_multiple_values? true end def _section :'permissions' end class RoleBased < XML::ConfigClass def has_multiple_values? true end def _section :'role-based' end class Custom < XML::ConfigClass def has_multiple_values? true end def _section :'custom' end class DgTemplateProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'dg-template-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "help-string"=>"access domain name", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/access-domain/entry/@name"]}, "profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/shared/admin-role/entry/@name"]}} # access domain name def name prop_get('@name') end def profile prop_get('profile') end def profile=(val) prop_set('profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DgTemplateProfiles def dg_template_profiles if @create_children @subclasses['dg-template-profiles'] ||= DgTemplateProfiles.new(parent_instance: self, create_children: @create_children) else DgTemplateProfiles.new(parent_instance: self) end end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["##/predefined/admin-role/entry[role/panorama]/@name", "##/predefined/admin-role/entry[role/panorama]/@name"]}} def profile prop_get('profile') end def profile=(val) prop_set('profile', val) end end # class Custom def custom if @create_children @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) else Custom.new(parent_instance: self) end end @props={"superreader"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}, "superuser"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}, "panorama-admin"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}} def superreader prop_get('superreader') end def superreader=(val) prop_set('superreader', val) end def superuser prop_get('superuser') end def superuser=(val) prop_set('superuser', val) end def panorama_admin prop_get('panorama-admin') end def panorama_admin=(val) prop_set('panorama-admin', val) end end # class RoleBased def role_based if @create_children @subclasses['role-based'] ||= RoleBased.new(parent_instance: self, create_children: @create_children) else RoleBased.new(parent_instance: self) end end @props={} end # class Permissions def permissions if @create_children @subclasses['permissions'] ||= Permissions.new(parent_instance: self, create_children: @create_children) else Permissions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[a-zA-Z0-9_.-]+$", "maxlen"=>"31", "help-string"=>"user name (alphanumeric)"}, "phash"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry/@name", "#config/shared/authentication-sequence/entry/@name", "##/panorama/authentication-profile/entry/@name", "##/panorama/authentication-sequence/entry/@name"]}, "password-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/password-profile/entry/@name"]}, "client-certificate-only"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Is client certificate authentication enough?"}, "public-key__8"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"non-fips-mode", "optional"=>"yes", "minlen"=>"256", "maxlen"=>"4096", "help-string"=>"Public RSA"}, "public-key__9"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"fips-mode", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"4096", "help-string"=>"Public RSA/DSA"}} # user name (alphanumeric) def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def password_profile prop_get('password-profile') end def password_profile=(val) prop_set('password-profile', val) end # Is client certificate authentication enough? def client_certificate_only prop_get('client-certificate-only') end # Is client certificate authentication enough? def client_certificate_only=(val) prop_set('client-certificate-only', val) end # Public RSA def public_key__8 prop_get('public-key__8') end # Public RSA def public_key__8=(val) prop_set('public-key__8', val) end # Public RSA/DSA def public_key__9 prop_get('public-key__9') end # Public RSA/DSA def public_key__9=(val) prop_set('public-key__9', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"24", "maxlen"=>"31", "regex"=>"^([0-9a-zA-Z_-])+$", "help-string"=>"alphanumeric string [0-9a-zA-Z_-]"}} # alphanumeric string [0-9a-zA-Z_-] def member prop_get('member') end # alphanumeric string [0-9a-zA-Z_-] def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "regex"=>"^[0-9A-Z]+$", "help-string"=>"Serial number of the device"}, "auto-push"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"ip address"}, "to-sw-version"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "regex"=>"[0-9]+\\.[0-9]+\\.[0-9]+", "help-string"=> "Automatically upgrade software to this version for new deployments", "complete-handler"=>"get-panos-upgradable-version", "autocomplete"=>"yes"}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"ip address"}, "disable-config-backup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable config back up for this device"}} # Serial number of the device def name prop_get('@name') end def auto_push prop_get('auto-push') end def auto_push=(val) prop_set('auto-push', val) end # ip address def hostname prop_get('hostname') end # ip address def hostname=(val) prop_set('hostname', val) end # Automatically upgrade software to this version for new deployments def to_sw_version prop_get('to-sw-version') end # Automatically upgrade software to this version for new deployments def to_sw_version=(val) prop_set('to-sw-version', val) end # ip address def ip prop_get('ip') end # ip address def ip=(val) prop_set('ip', val) end # Enable config back up for this device def disable_config_backup prop_get('disable-config-backup') end # Enable config back up for this device def disable_config_backup=(val) prop_set('disable-config-backup', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class AccessDomain < XML::ConfigClass def has_multiple_values? true end def _section :'access-domain' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DeviceGroups < XML::ConfigClass def has_multiple_values? true end def _section :'device-groups' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/device-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DeviceGroups def device_groups if @create_children @subclasses['device-groups'] ||= DeviceGroups.new(parent_instance: self, create_children: @create_children) else DeviceGroups.new(parent_instance: self) end end class LogCollectorGroups < XML::ConfigClass def has_multiple_values? true end def _section :'log-collector-groups' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectorGroups def log_collector_groups if @create_children @subclasses['log-collector-groups'] ||= LogCollectorGroups.new(parent_instance: self, create_children: @create_children) else LogCollectorGroups.new(parent_instance: self) end end class Templates < XML::ConfigClass def has_multiple_values? true end def _section :'templates' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/template-stack/entry/@name", "#config/devices/entry/template-stack/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Templates def templates if @create_children @subclasses['templates'] ||= Templates.new(parent_instance: self, create_children: @create_children) else Templates.new(parent_instance: self) end end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "help-string"=>"device serial no", "autocomplete"=>"yes", "memberof"=> ["#mgt-config/devices/entry/@name", "#mgt-config/devices/entry/@name"]}} # device serial no def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "shared-access"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"read", "enum"=>[{"value"=>"read"}, {"value"=>"write"}, {"value"=>"shared-only"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def shared_access prop_get('shared-access') end def shared_access=(val) prop_set('shared-access', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AccessDomain def access_domain if @create_children @subclasses['access-domain'] ||= AccessDomain.new(parent_instance: self, create_children: @create_children) else AccessDomain.new(parent_instance: self) end end @props={} end # class MgtConfig def mgt_config @subclasses['mgt-config'] ||= MgtConfig.new(parent_instance: self, create_children: @create_children) end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Deviceconfig < ConfigClass def has_multiple_values? false end def _section :'deviceconfig' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={"send-hostname"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "send-client-id"=>{"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-hostname"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-domain"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}} def send_hostname prop_get('send-hostname') end def send_hostname=(val) prop_set('send-hostname', val) end def send_client_id prop_get('send-client-id') end def send_client_id=(val) prop_set('send-client-id', val) end def accept_dhcp_hostname prop_get('accept-dhcp-hostname') end def accept_dhcp_hostname=(val) prop_set('accept-dhcp-hostname', val) end def accept_dhcp_domain prop_get('accept-dhcp-domain') end def accept_dhcp_domain=(val) prop_set('accept-dhcp-domain', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class DnsSetting < ConfigClass def has_multiple_values? false end def _section :'dns-setting' end class Servers < ConfigClass def has_multiple_values? false end def _section :'servers' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Primary DNS server IP address"}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Secondary DNS server IP address"}} # Primary DNS server IP address def primary prop_get('primary') end # Primary DNS server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS server IP address def secondary prop_get('secondary') end # Secondary DNS server IP address def secondary=(val) prop_set('secondary', val) end end # class Servers def servers @subclasses['servers'] ||= Servers.new(parent_instance: self, create_children: @create_children) end @props={} end # class DnsSetting def dns_setting @subclasses['dns-setting'] ||= DnsSetting.new(parent_instance: self, create_children: @create_children) end class NtpServers < ConfigClass def has_multiple_values? false end def _section :'ntp-servers' end class PrimaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'primary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class PrimaryNtpServer def primary_ntp_server @subclasses['primary-ntp-server'] ||= PrimaryNtpServer.new(parent_instance: self, create_children: @create_children) end class SecondaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'secondary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class SecondaryNtpServer def secondary_ntp_server @subclasses['secondary-ntp-server'] ||= SecondaryNtpServer.new(parent_instance: self, create_children: @create_children) end @props={} end # class NtpServers def ntp_servers @subclasses['ntp-servers'] ||= NtpServers.new(parent_instance: self, create_children: @create_children) end class HsmSettings < ConfigClass def has_multiple_values? false end def _section :'hsm-settings' end class Provider < ConfigClass def has_multiple_values? false end def _section :'provider' end class SafenetNetwork < ConfigClass def has_multiple_values? false end def _section :'safenet-network' end class HsmServer < XML::ConfigClass def has_multiple_values? true end def _section :'hsm-server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"hsm server name"}, "server-address"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"HSM server IP address"}} # hsm server name def name prop_get('@name') end # HSM server IP address def server_address prop_get('server-address') end # HSM server IP address def server_address=(val) prop_set('server-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HsmServer def hsm_server if @create_children @subclasses['hsm-server'] ||= HsmServer.new(parent_instance: self, create_children: @create_children) else HsmServer.new(parent_instance: self) end end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"auto-recovery-retry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"500", "default"=>"0", "help-string"=> "The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off."}, "ha-group-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"HA group name"}} # The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off. def auto_recovery_retry prop_get('auto-recovery-retry') end # The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off. def auto_recovery_retry=(val) prop_set('auto-recovery-retry', val) end # HA group name def ha_group_name prop_get('ha-group-name') end # HA group name def ha_group_name=(val) prop_set('ha-group-name', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end @props={} end # class SafenetNetwork def safenet_network @subclasses['safenet-network'] ||= SafenetNetwork.new(parent_instance: self, create_children: @create_children) end class NcipherNshieldConnect < ConfigClass def has_multiple_values? false end def _section :'ncipher-nshield-connect' end class HsmServer < XML::ConfigClass def has_multiple_values? true end def _section :'hsm-server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"hsm server name"}, "server-address"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"HSM server IP address"}} # hsm server name def name prop_get('@name') end # HSM server IP address def server_address prop_get('server-address') end # HSM server IP address def server_address=(val) prop_set('server-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HsmServer def hsm_server if @create_children @subclasses['hsm-server'] ||= HsmServer.new(parent_instance: self, create_children: @create_children) else HsmServer.new(parent_instance: self) end end @props={"rfs-address"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address of remote file system server"}} # IP address of remote file system server def rfs_address prop_get('rfs-address') end # IP address of remote file system server def rfs_address=(val) prop_set('rfs-address', val) end end # class NcipherNshieldConnect def ncipher_nshield_connect @subclasses['ncipher-nshield-connect'] ||= NcipherNshieldConnect.new(parent_instance: self, create_children: @create_children) end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end @props={} end # class Provider def provider @subclasses['provider'] ||= Provider.new(parent_instance: self, create_children: @create_children) end @props={} end # class HsmSettings def hsm_settings @subclasses['hsm-settings'] ||= HsmSettings.new(parent_instance: self, create_children: @create_children) end class DeviceTelemetry < ConfigClass def has_multiple_values? false end def _section :'device-telemetry' end @props={"product-usage"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "device-health-performance"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "threat-prevention"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "region"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"region name to send telemetry data", "complete-handler"=>"device-telemetry-region-completer"}} def product_usage prop_get('product-usage') end def product_usage=(val) prop_set('product-usage', val) end def device_health_performance prop_get('device-health-performance') end def device_health_performance=(val) prop_set('device-health-performance', val) end def threat_prevention prop_get('threat-prevention') end def threat_prevention=(val) prop_set('threat-prevention', val) end # region name to send telemetry data def region prop_get('region') end # region name to send telemetry data def region=(val) prop_set('region', val) end end # class DeviceTelemetry def device_telemetry @subclasses['device-telemetry'] ||= DeviceTelemetry.new(parent_instance: self, create_children: @create_children) end class ManagementTunnel__32 < ConfigClass def has_multiple_values? false end def _section :'management-tunnel__32' end class Tunnel < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "ikev2-gateway"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP IKEv2 gateway profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/ikev2-gateway/entry/@name"]}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP IPSec SA proposals", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/crypto-profiles/ipsec-crypto-profiles/entry/@name"]}, "enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable tunnel"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # MP IKEv2 gateway profile def ikev2_gateway prop_get('ikev2-gateway') end # MP IKEv2 gateway profile def ikev2_gateway=(val) prop_set('ikev2-gateway', val) end # MP IPSec SA proposals def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # MP IPSec SA proposals def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end # Enable tunnel def enabled prop_get('enabled') end # Enable tunnel def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tunnel def tunnel if @create_children @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) else Tunnel.new(parent_instance: self) end end class Ikev2Gateway < XML::ConfigClass def has_multiple_values? true end def _section :'ikev2-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TunnelIps < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel-ips' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end @props={"traffic-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"any", "help-string"=>"The type of traffic to pass through the tunnel", "confirm"=> "By selecting a specific traffic type only that type of traffic through the tunnel. Make sure to configure the tunnel with same traffic type on peer side as well.", "enum"=> [{"value"=>"ntp", "help-string"=> "Allow only NTP traffic over udp port 123 to pass through tunnel"}, {"value"=>"radius", "help-string"=> "Allow only Radius traffic over udp port 1812 to pass through tunnel"}, {"value"=>"tacacs", "help-string"=> "Allow only TACACS traffic over tcp port 49 to pass through tunnel"}, {"value"=>"dns", "help-string"=> "Allow only DNS traffic over udp port 53 to pass through tunnel"}, {"value"=>"any", "help-string"=>"Allow all type of traffic through tunnel"}]}, "port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Non-standard tcp/udp port to pass the traffic through the tunnel", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535", "help-string"=>"Port number"}, "enum"=> [{"value"=>"default", "help-string"=>"Standard port number for the given protocol"}]}}} # The type of traffic to pass through the tunnel def traffic_type prop_get('traffic-type') end # The type of traffic to pass through the tunnel def traffic_type=(val) prop_set('traffic-type', val) end # Non-standard tcp/udp port to pass the traffic through the tunnel def port prop_get('port') end # Non-standard tcp/udp port to pass the traffic through the tunnel def port=(val) prop_set('port', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local-tunnel-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Local tunnel IP address"}, "destination-service-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Local tunnel IP address"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Local tunnel IP address def local_tunnel_ip_address prop_get('local-tunnel-ip-address') end # Local tunnel IP address def local_tunnel_ip_address=(val) prop_set('local-tunnel-ip-address', val) end # Local tunnel IP address def destination_service_ip_address prop_get('destination-service-ip-address') end # Local tunnel IP address def destination_service_ip_address=(val) prop_set('destination-service-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TunnelIps def tunnel_ips if @create_children @subclasses['tunnel-ips'] ||= TunnelIps.new(parent_instance: self, create_children: @create_children) else TunnelIps.new(parent_instance: self) end end class PeerId < ConfigClass def has_multiple_values? false end def _section :'peer-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Peer ID string", "regex"=> "^(.+\\@[\\*a-zA-Z0-9.-]+)$|^([\\*a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer"}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Peer ID string def id prop_get('id') end # Peer ID string def id=(val) prop_set('id', val) end end # class PeerId def peer_id @subclasses['peer-id'] ||= PeerId.new(parent_instance: self, create_children: @create_children) end class LocalId < ConfigClass def has_multiple_values? false end def _section :'local-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Local ID string", "regex"=> "^(.+\\@[a-zA-Z0-9.-]+)$|^([a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer"}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Local ID string def id prop_get('id') end # Local ID string def id=(val) prop_set('id', val) end end # class LocalId def local_id @subclasses['local-id'] ||= LocalId.new(parent_instance: self, create_children: @create_children) end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end class PreSharedKey < ConfigClass def has_multiple_values? false end def _section :'pre-shared-key' end @props={"key"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"the string used as pre-shared key", "maxlen"=>"255", "encrypt"=>"yes", "skip-commit-validation"=>"yes"}} # the string used as pre-shared key def key prop_get('key') end # the string used as pre-shared key def key=(val) prop_set('key', val) end end # class PreSharedKey def pre_shared_key @subclasses['pre-shared-key'] ||= PreSharedKey.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class LocalCertificate < ConfigClass def has_multiple_values? false end def _section :'local-certificate' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key]/@name", "#config/shared/certificate/entry[not(csr)][private-key]/@name"]}} def name prop_get('name') end def name=(val) prop_set('name', val) end end # class LocalCertificate def local_certificate @subclasses['local-certificate'] ||= LocalCertificate.new(parent_instance: self, create_children: @create_children) end class PeerCaCertificates < XML::ConfigClass def has_multiple_values? true end def _section :'peer-ca-certificates' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[ca='yes']/@name", "#config/shared/certificate/entry[ca='yes']/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PeerCaCertificates def peer_ca_certificates if @create_children @subclasses['peer-ca-certificates'] ||= PeerCaCertificates.new(parent_instance: self, create_children: @create_children) else PeerCaCertificates.new(parent_instance: self) end end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable sending empty information liveness check message", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"delay interval before sending probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable sending empty information liveness check message def enable prop_get('enable') end # Enable sending empty information liveness check message def enable=(val) prop_set('enable', val) end # delay interval before sending probing packets (in seconds) def interval prop_get('interval') end # delay interval before sending probing packets (in seconds) def interval=(val) prop_set('interval', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"ikev2-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP-IKEv2 SA crypto profile name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/crypto-profiles/ikev2-crypto-profiles/entry/@name"]}, "require-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Require cookie", "default"=>"no"}, "send-peer-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send peer ID", "default"=>"yes", "disabled"=>"yes"}} # MP-IKEv2 SA crypto profile name def ikev2_crypto_profile prop_get('ikev2-crypto-profile') end # MP-IKEv2 SA crypto profile name def ikev2_crypto_profile=(val) prop_set('ikev2-crypto-profile', val) end # Require cookie def require_cookie prop_get('require-cookie') end # Require cookie def require_cookie=(val) prop_set('require-cookie', val) end # Send peer ID def send_peer_id prop_get('send-peer-id') end # Send peer ID def send_peer_id=(val) prop_set('send-peer-id', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class ProtocolCommon < ConfigClass def has_multiple_values? false end def _section :'protocol-common' end class NatTraversal < ConfigClass def has_multiple_values? false end def _section :'nat-traversal' end @props={"enable"=> {"node-type"=>"element", "help-string"=>"Enable NAT-Traversal", "type"=>"bool", "default"=>"no"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for NAT keep-alive packets (in seconds)", "type"=>"rangedint", "min"=>"10", "max"=>"3600", "default"=>"20"}, "udp-checksum-enable"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enable UDP checksum", "type"=>"bool", "default"=>"no"}} # Enable NAT-Traversal def enable prop_get('enable') end # Enable NAT-Traversal def enable=(val) prop_set('enable', val) end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Enable UDP checksum def udp_checksum_enable prop_get('udp-checksum-enable') end # Enable UDP checksum def udp_checksum_enable=(val) prop_set('udp-checksum-enable', val) end end # class NatTraversal def nat_traversal @subclasses['nat-traversal'] ||= NatTraversal.new(parent_instance: self, create_children: @create_children) end @props={"passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable passive mode (responder only)", "default"=>"no"}} # Enable passive mode (responder only) def passive_mode prop_get('passive-mode') end # Enable passive mode (responder only) def passive_mode=(val) prop_set('passive-mode', val) end end # class ProtocolCommon def protocol_common @subclasses['protocol-common'] ||= ProtocolCommon.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the MP-IKEv2 gateway"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the MP-IKEv2 gateway"}, "peer-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Peer IP address where the tunnel ends"}, "local-ip-address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Local IP address from where the tunnel originates", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/deviceconfig/system/ip-address"]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the MP-IKEv2 gateway def disabled prop_get('disabled') end # Disable the MP-IKEv2 gateway def disabled=(val) prop_set('disabled', val) end # use IPv6 for the MP-IKEv2 gateway def ipv6 prop_get('ipv6') end # use IPv6 for the MP-IKEv2 gateway def ipv6=(val) prop_set('ipv6', val) end # Peer IP address where the tunnel ends def peer_ip_address prop_get('peer-ip-address') end # Peer IP address where the tunnel ends def peer_ip_address=(val) prop_set('peer-ip-address', val) end # Local IP address from where the tunnel originates def local_ip_address prop_get('local-ip-address') end # Local IP address from where the tunnel originates def local_ip_address=(val) prop_set('local-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ikev2Gateway def ikev2_gateway if @create_children @subclasses['ikev2-gateway'] ||= Ikev2Gateway.new(parent_instance: self, create_children: @create_children) else Ikev2Gateway.new(parent_instance: self) end end class CryptoProfiles < ConfigClass def has_multiple_values? false end def _section :'crypto-profiles' end class Ikev2CryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ikev2-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-gcm", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Hash < XML::ConfigClass def has_multiple_values? true end def _section :'hash' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha256", "enum"=> [{"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hash def hash if @create_children @subclasses['hash'] ||= Hash.new(parent_instance: self, create_children: @create_children) else Hash.new(parent_instance: self) end end class DhGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dh-group' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"group19", "enum"=> [{"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhGroup def dh_group if @create_children @subclasses['dh-group'] ||= DhGroup.new(parent_instance: self, create_children: @create_children) else DhGroup.new(parent_instance: self) end end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"8"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "authentication-multiple"=> {"node-type"=>"element", "help-string"=> "MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled", "type"=>"rangedint", "max"=>"50", "optional"=>"yes", "default"=>"0"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple prop_get('authentication-multiple') end # MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple=(val) prop_set('authentication-multiple', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ikev2CryptoProfiles def ikev2_crypto_profiles if @create_children @subclasses['ikev2-crypto-profiles'] ||= Ikev2CryptoProfiles.new(parent_instance: self, create_children: @create_children) else Ikev2CryptoProfiles.new(parent_instance: self) end end class IpsecCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-gcm", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"sha256", "complete-handler"=>"esp-auth-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha256", "enum"=> [{"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end class Lifesize < XML::ConfigClass def has_multiple_values? true end def _section :'lifesize' end @props={"kb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in kilobytes(KB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "mb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in megabytes(MB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "gb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in gigabytes(GB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}} # specify lifesize in kilobytes(KB) def kb prop_get('kb') end # specify lifesize in kilobytes(KB) def kb=(val) prop_set('kb', val) end # specify lifesize in megabytes(MB) def mb prop_get('mb') end # specify lifesize in megabytes(MB) def mb=(val) prop_set('mb', val) end # specify lifesize in gigabytes(GB) def gb prop_get('gb') end # specify lifesize in gigabytes(GB) def gb=(val) prop_set('gb', val) end end # class Lifesize def lifesize if @create_children @subclasses['lifesize'] ||= Lifesize.new(parent_instance: self, create_children: @create_children) else Lifesize.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "dh-group"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"phase-2 DH group (PFS DH group)", "default"=>"group19", "enum"=> [{"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # phase-2 DH group (PFS DH group) def dh_group prop_get('dh-group') end # phase-2 DH group (PFS DH group) def dh_group=(val) prop_set('dh-group', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpsecCryptoProfiles def ipsec_crypto_profiles if @create_children @subclasses['ipsec-crypto-profiles'] ||= IpsecCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IpsecCryptoProfiles.new(parent_instance: self) end end @props={} end # class CryptoProfiles def crypto_profiles @subclasses['crypto-profiles'] ||= CryptoProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class ManagementTunnel__32 def management_tunnel__32 @subclasses['management-tunnel__32'] ||= ManagementTunnel__32.new(parent_instance: self, create_children: @create_children) end class Ssh < ConfigClass def has_multiple_values? false end def _section :'ssh' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HaProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ha-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HaProfiles def ha_profiles if @create_children @subclasses['ha-profiles'] ||= HaProfiles.new(parent_instance: self, create_children: @create_children) else HaProfiles.new(parent_instance: self) end end class MgmtProfiles < ConfigClass def has_multiple_values? false end def _section :'mgmt-profiles' end class ServerProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'server-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerProfiles def server_profiles if @create_children @subclasses['server-profiles'] ||= ServerProfiles.new(parent_instance: self, create_children: @create_children) else ServerProfiles.new(parent_instance: self) end end @props={} end # class MgmtProfiles def mgmt_profiles @subclasses['mgmt-profiles'] ||= MgmtProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"ha-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"HA profile to be used by HA SSH", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/ha-profiles/entry/@name"]}} # HA profile to be used by HA SSH def ha_profile prop_get('ha-profile') end # HA profile to be used by HA SSH def ha_profile=(val) prop_set('ha-profile', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end @props={"server-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Mgmt profile to be used by Mgmt SSH Server", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/mgmt-profiles/server-profiles/entry/@name"]}} # Mgmt profile to be used by Mgmt SSH Server def server_profile prop_get('server-profile') end # Mgmt profile to be used by Mgmt SSH Server def server_profile=(val) prop_set('server-profile', val) end end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end class RegenerateHostkeys < ConfigClass def has_multiple_values? false end def _section :'regenerate-hostkeys' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegenerateHostkeys def regenerate_hostkeys @subclasses['regenerate-hostkeys'] ||= RegenerateHostkeys.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ssh def ssh @subclasses['ssh'] ||= Ssh.new(parent_instance: self, create_children: @create_children) end class SnmpSetting < ConfigClass def has_multiple_values? false end def _section :'snmp-setting' end class SnmpSystem < ConfigClass def has_multiple_values? false end def _section :'snmp-system' end @props={"location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"256", "help-string"=>"System location"}, "contact"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"256", "type"=>"string", "help-string"=>"Contact information"}, "send-event-specific-traps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Use Event-specific Trap Definitions"}} # System location def location prop_get('location') end # System location def location=(val) prop_set('location', val) end # Contact information def contact prop_get('contact') end # Contact information def contact=(val) prop_set('contact', val) end # Use Event-specific Trap Definitions def send_event_specific_traps prop_get('send-event-specific-traps') end # Use Event-specific Trap Definitions def send_event_specific_traps=(val) prop_set('send-event-specific-traps', val) end end # class SnmpSystem def snmp_system @subclasses['snmp-system'] ||= SnmpSystem.new(parent_instance: self, create_children: @create_children) end class AccessSetting < ConfigClass def has_multiple_values? false end def _section :'access-setting' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end @props={"snmp-community-string"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"public", "maxlen"=>"255", "help-string"=>"SNMP Community String"}} # SNMP Community String def snmp_community_string prop_get('snmp-community-string') end # SNMP Community String def snmp_community_string=(val) prop_set('snmp-community-string', val) end end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Views < XML::ConfigClass def has_multiple_values? true end def _section :'views' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class View < XML::ConfigClass def has_multiple_values? true end def _section :'view' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Oid subtree name"}, "oid"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "regex"=>"^[0-9\\.]+$", "help-string"=>"Oid of a mib node"}, "option"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"include"}, {"value"=>"exclude"}]}, "mask"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "regex"=>"^0+[xX][0-9a-fA-F:.]+$", "help-string"=>"Subtree mask in hex"}} # Oid subtree name def name prop_get('@name') end # Oid of a mib node def oid prop_get('oid') end # Oid of a mib node def oid=(val) prop_set('oid', val) end def option prop_get('option') end def option=(val) prop_set('option', val) end # Subtree mask in hex def mask prop_get('mask') end # Subtree mask in hex def mask=(val) prop_set('mask', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class View def view if @create_children @subclasses['view'] ||= View.new(parent_instance: self, create_children: @create_children) else View.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[^ ]+$", "help-string"=>"View name"}} # View name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Views def views if @create_children @subclasses['views'] ||= Views.new(parent_instance: self, create_children: @create_children) else Views.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"User name"}, "view"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Snmp View Name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/snmp-setting/access-setting/version/v3/views/entry/@name"]}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "help-string"=>"Authentication Protocol Password", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "help-string"=>"Privacy Protocol Password", "encrypt"=>"yes"}} # User name def name prop_get('@name') end # Snmp View Name def view prop_get('view') end # Snmp View Name def view=(val) prop_set('view', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={} end # class AccessSetting def access_setting @subclasses['access-setting'] ||= AccessSetting.new(parent_instance: self, create_children: @create_children) end @props={} end # class SnmpSetting def snmp_setting @subclasses['snmp-setting'] ||= SnmpSetting.new(parent_instance: self, create_children: @create_children) end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^-?[0-9]+([.][0-9]+)?$", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^-?[0-9]+([.][0-9]+)?$", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "help-string"=>"ip address/prefix"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # ip address/prefix def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end class LogLink < XML::ConfigClass def has_multiple_values? true end def _section :'log-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"name of link", "regex"=>"[0-9a-zA-Z:@./_-]+"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"URL format of link", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024"}} # name of link def name prop_get('@name') end # URL format of link def url prop_get('url') end # URL format of link def url=(val) prop_set('url', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogLink def log_link if @create_children @subclasses['log-link'] ||= LogLink.new(parent_instance: self, create_children: @create_children) else LogLink.new(parent_instance: self) end end class ConfigBundleExportSchedule < XML::ConfigClass def has_multiple_values? true end def _section :'config-bundle-export-schedule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Ftp__1 < ConfigClass def has_multiple_values? false end def _section :'ftp__1' end @props={"hostname"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"ftp hostname"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"ftp port"}, "path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[\\.\\+/,\\{\\}0-9a-zA-Z_-]+$", "maxlen"=>"255", "help-string"=>"ftp server path"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"ftp username", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"ftp password", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}, "passive-mode"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable FTP Passive Mode"}} # ftp hostname def hostname prop_get('hostname') end # ftp hostname def hostname=(val) prop_set('hostname', val) end # ftp port def port prop_get('port') end # ftp port def port=(val) prop_set('port', val) end # ftp server path def path prop_get('path') end # ftp server path def path=(val) prop_set('path', val) end # ftp username def username prop_get('username') end # ftp username def username=(val) prop_set('username', val) end # ftp password def password prop_get('password') end # ftp password def password=(val) prop_set('password', val) end # Enable FTP Passive Mode def passive_mode prop_get('passive-mode') end # Enable FTP Passive Mode def passive_mode=(val) prop_set('passive-mode', val) end end # class Ftp__1 def ftp__1 @subclasses['ftp__1'] ||= Ftp__1.new(parent_instance: self, create_children: @create_children) end class Scp < ConfigClass def has_multiple_values? false end def _section :'scp' end @props={"hostname"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"scp hostname"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"scp port"}, "path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[\\.\\+/,\\{\\}0-9a-zA-Z_-]+$", "maxlen"=>"255", "help-string"=>"scp server path"}, "username"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"scp username", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"scp password", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # scp hostname def hostname prop_get('hostname') end # scp hostname def hostname=(val) prop_set('hostname', val) end # scp port def port prop_get('port') end # scp port def port=(val) prop_set('port', val) end # scp server path def path prop_get('path') end # scp server path def path=(val) prop_set('path', val) end # scp username def username prop_get('username') end # scp username def username=(val) prop_set('username', val) end # scp password def password prop_get('password') end # scp password def password=(val) prop_set('password', val) end end # class Scp def scp @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"schedule name", "regex"=>"^[0-9a-zA-Z:@./_-]+$"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "enable"=>{"node-type"=>"element", "type"=>"bool"}, "start-time"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time to start the scheduled export hh:mm (e.g. 03:30)"}} # schedule name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Time to start the scheduled export hh:mm (e.g. 03:30) def start_time prop_get('start-time') end # Time to start the scheduled export hh:mm (e.g. 03:30) def start_time=(val) prop_set('start-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ConfigBundleExportSchedule def config_bundle_export_schedule if @create_children @subclasses['config-bundle-export-schedule'] ||= ConfigBundleExportSchedule.new(parent_instance: self, create_children: @create_children) else ConfigBundleExportSchedule.new(parent_instance: self) end end class UpdateSchedule < ConfigClass def has_multiple_values? false end def _section :'update-schedule' end class Threats < ConfigClass def has_multiple_values? false end def _section :'threats' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "new-app-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore new apps if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # ignore new apps if release date is new (hours) def new_app_threshold prop_get('new-app-threshold') end # ignore new apps if release date is new (hours) def new_app_threshold=(val) prop_set('new-app-threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Threats def threats @subclasses['threats'] ||= Threats.new(parent_instance: self, create_children: @create_children) end class AntiVirus < ConfigClass def has_multiple_values? false end def _section :'anti-virus' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AntiVirus def anti_virus @subclasses['anti-virus'] ||= AntiVirus.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class EveryMin < ConfigClass def has_multiple_values? false end def _section :'every-min' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class EveryMin def every_min @subclasses['every-min'] ||= EveryMin.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes Past Quarter-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes Past Quarter-Hour def at prop_get('at') end # Minutes Past Quarter-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes Past Half-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes Past Half-Hour def at prop_get('at') end # Minutes Past Half-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes Past Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes Past Hour def at prop_get('at') end # Minutes Past Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class WfPrivate < ConfigClass def has_multiple_values? false end def _section :'wf-private' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Every5Mins < ConfigClass def has_multiple_values? false end def _section :'every-5-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "help-string"=>"5 Minutes Past Five minutes"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # 5 Minutes Past Five minutes def at prop_get('at') end # 5 Minutes Past Five minutes def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every5Mins def every_5_mins @subclasses['every-5-mins'] ||= Every5Mins.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes Past Quarter-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Quarter-Hour def at prop_get('at') end # Minutes Past Quarter-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes Past Half-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Half-Hour def at prop_get('at') end # Minutes Past Half-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes Past Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Hour def at prop_get('at') end # Minutes Past Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={"sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class WfPrivate def wf_private @subclasses['wf-private'] ||= WfPrivate.new(parent_instance: self, create_children: @create_children) end @props={} end # class UpdateSchedule def update_schedule @subclasses['update-schedule'] ||= UpdateSchedule.new(parent_instance: self, create_children: @create_children) end class MotdAndBanner < ConfigClass def has_multiple_values? false end def _section :'motd-and-banner' end @props={"motd-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/disable message of the day"}, "message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Message of the day"}, "motd-do-not-display-again"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow do not display again"}, "motd-title"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"Message of the Day", "help-string"=>"Title for message of the day"}, "motd-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "severity"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Icon", "multi-types"=> {"enum"=> [{"value"=>"warning", "help-string"=>"Warning"}, {"value"=>"question", "help-string"=>"Help"}, {"value"=>"error", "help-string"=>"Error"}, {"value"=>"info", "help-string"=>"Information"}]}}, "banner-header"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Header banner text"}, "banner-header-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "banner-header-text-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color18"}]}, "banner-header-footer-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Same banner for header and footer"}, "banner-footer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Footer banner text"}, "banner-footer-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "banner-footer-text-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color18"}]}} # Enable/disable message of the day def motd_enable prop_get('motd-enable') end # Enable/disable message of the day def motd_enable=(val) prop_set('motd-enable', val) end # Message of the day def message prop_get('message') end # Message of the day def message=(val) prop_set('message', val) end # Allow do not display again def motd_do_not_display_again prop_get('motd-do-not-display-again') end # Allow do not display again def motd_do_not_display_again=(val) prop_set('motd-do-not-display-again', val) end # Title for message of the day def motd_title prop_get('motd-title') end # Title for message of the day def motd_title=(val) prop_set('motd-title', val) end def motd_color prop_get('motd-color') end def motd_color=(val) prop_set('motd-color', val) end # Icon def severity prop_get('severity') end # Icon def severity=(val) prop_set('severity', val) end # Header banner text def banner_header prop_get('banner-header') end # Header banner text def banner_header=(val) prop_set('banner-header', val) end def banner_header_color prop_get('banner-header-color') end def banner_header_color=(val) prop_set('banner-header-color', val) end def banner_header_text_color prop_get('banner-header-text-color') end def banner_header_text_color=(val) prop_set('banner-header-text-color', val) end # Same banner for header and footer def banner_header_footer_match prop_get('banner-header-footer-match') end # Same banner for header and footer def banner_header_footer_match=(val) prop_set('banner-header-footer-match', val) end # Footer banner text def banner_footer prop_get('banner-footer') end # Footer banner text def banner_footer=(val) prop_set('banner-footer', val) end def banner_footer_color prop_get('banner-footer-color') end def banner_footer_color=(val) prop_set('banner-footer-color', val) end def banner_footer_text_color prop_get('banner-footer-text-color') end def banner_footer_text_color=(val) prop_set('banner-footer-text-color', val) end end # class MotdAndBanner def motd_and_banner @subclasses['motd-and-banner'] ||= MotdAndBanner.new(parent_instance: self, create_children: @create_children) end class Dlsrvr < ConfigClass def has_multiple_values? false end def _section :'dlsrvr' end @props={"interface"=> {"node-type"=>"element", "help-string"=>"Interface for download server", "type"=>"string", "maxlen"=>"8", "complete-handler"=>"dlsrvr-interface-completor", "optional"=>"yes"}} # Interface for download server def interface prop_get('interface') end # Interface for download server def interface=(val) prop_set('interface', val) end end # class Dlsrvr def dlsrvr @subclasses['dlsrvr'] ||= Dlsrvr.new(parent_instance: self, create_children: @create_children) end class DeploymentUpdateSchedule < XML::ConfigClass def has_multiple_values? true end def _section :'deployment-update-schedule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DownloadSource < XML::ConfigClass def has_multiple_values? true end def _section :'download-source' end class UpdateServer < ConfigClass def has_multiple_values? false end def _section :'update-server' end @props={} end # class UpdateServer def update_server @subclasses['update-server'] ||= UpdateServer.new(parent_instance: self, create_children: @create_children) end class Scp < ConfigClass def has_multiple_values? false end def _section :'scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=> "#config/panorama/server-profile/scp-profile/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class Scp def scp @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) end @props={} end # class DownloadSource def download_source if @create_children @subclasses['download-source'] ||= DownloadSource.new(parent_instance: self, create_children: @create_children) else DownloadSource.new(parent_instance: self) end end class App < ConfigClass def has_multiple_values? false end def _section :'app' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-app-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour", "uiHint-fieldLabel"=>"Minutes Past Half-Hour"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-app-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour", "uiHint-fieldLabel"=>"Minutes Past Hour"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-app-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-app-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "uiHint-fieldLabel"=>"Day", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "new-app-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore new app if release date is new (hours)"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # ignore new app if release date is new (hours) def new_app_threshold prop_get('new-app-threshold') end # ignore new app if release date is new (hours) def new_app_threshold=(val) prop_set('new-app-threshold', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class App def app @subclasses['app'] ||= App.new(parent_instance: self, create_children: @create_children) end class AppAndThreat < ConfigClass def has_multiple_values? false end def _section :'app-and-threat' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < ConfigClass def has_multiple_values? false end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-content-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour", "uiHint-fieldLabel"=>"Minutes Past Half-Hour"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < ConfigClass def has_multiple_values? false end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-content-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour", "uiHint-fieldLabel"=>"Minutes Past Hour"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < ConfigClass def has_multiple_values? false end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-content-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < ConfigClass def has_multiple_values? false end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-content-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "uiHint-fieldLabel"=>"Day", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end # Disable new applications def disable_new_content prop_get('disable-new-content') end # Disable new applications def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "new-app-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore new app if release date is new (hours)"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # ignore new app if release date is new (hours) def new_app_threshold prop_get('new-app-threshold') end # ignore new app if release date is new (hours) def new_app_threshold=(val) prop_set('new-app-threshold', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AppAndThreat def app_and_threat @subclasses['app-and-threat'] ||= AppAndThreat.new(parent_instance: self, create_children: @create_children) end class AntiVirus < ConfigClass def has_multiple_values? false end def _section :'anti-virus' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-av-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour", "uiHint-fieldLabel"=>"Minutes Past Hour"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-av-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-av-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "uiHint-fieldLabel"=>"Day", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AntiVirus def anti_virus @subclasses['anti-virus'] ||= AntiVirus.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class EveryMin < ConfigClass def has_multiple_values? false end def _section :'every-min' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wildfire-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={} end # class EveryMin def every_min @subclasses['every-min'] ||= EveryMin.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wildfire-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes past quarter-hour", "uiHint-fieldLabel"=>"Minutes Past Quarter-Hour"}} # Minutes past quarter-hour def at prop_get('at') end # Minutes past quarter-hour def at=(val) prop_set('at', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wildfire-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour", "uiHint-fieldLabel"=>"Minutes Past Half-Hour"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wildfire-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour", "uiHint-fieldLabel"=>"Minutes Past Hour"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class UrlDatabase < ConfigClass def has_multiple_values? false end def _section :'url-database' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-urldb-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-urldb-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class LogCollectors < XML::ConfigClass def has_multiple_values? true end def _section :'log-collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"$config/devices/entry/log-collector/entry/@name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/log-collector/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogCollectors def log_collectors if @create_children @subclasses['log-collectors'] ||= LogCollectors.new(parent_instance: self, create_children: @create_children) else LogCollectors.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "uiHint-fieldLabel"=>"Day", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class UrlDatabase def url_database @subclasses['url-database'] ||= UrlDatabase.new(parent_instance: self, create_children: @create_children) end class WfContent < ConfigClass def has_multiple_values? false end def _section :'wf-content' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wfm-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour", "uiHint-fieldLabel"=>"Minutes Past Hour"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wfm-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class DownloadOnly < ConfigClass def has_multiple_values? false end def _section :'download-only' end @props={} end # class DownloadOnly def download_only @subclasses['download-only'] ||= DownloadOnly.new(parent_instance: self, create_children: @create_children) end class DownloadAndInstall < XML::ConfigClass def has_multiple_values? true end def _section :'download-and-install' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"deploy-updsch-wfm-eligible-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class DownloadAndInstall def download_and_install if @create_children @subclasses['download-and-install'] ||= DownloadAndInstall.new(parent_instance: self, create_children: @create_children) else DownloadAndInstall.new(parent_instance: self) end end class DownloadAndScp < ConfigClass def has_multiple_values? false end def _section :'download-and-scp' end @props={"scp-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "complete-handler"=>"#config/panorama/server-profile/scp/entry/@name", "help-string"=>"SCP profile to use", "autocomplete"=>"yes", "memberof"=>["#config/panorama/server-profile/scp/entry/@name"]}, "scp-path"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Path for files"}} # SCP profile to use def scp_profile prop_get('scp-profile') end # SCP profile to use def scp_profile=(val) prop_set('scp-profile', val) end # Path for files def scp_path prop_get('scp-path') end # Path for files def scp_path=(val) prop_set('scp-path', val) end end # class DownloadAndScp def download_and_scp @subclasses['download-and-scp'] ||= DownloadAndScp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "uiHint-fieldLabel"=>"Day", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)", "uiHint-fieldLabel"=>"Time"}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disable new applications after installation"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class WfContent def wf_content @subclasses['wf-content'] ||= WfContent.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DeploymentUpdateSchedule def deployment_update_schedule if @create_children @subclasses['deployment-update-schedule'] ||= DeploymentUpdateSchedule.new(parent_instance: self, create_children: @create_children) else DeploymentUpdateSchedule.new(parent_instance: self) end end @props={"login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200"}, "ack-login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Force Admins to Acknowledge Login Banner"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"32"}, "common-name-for-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=> "Common name recognized by devices, if different from ip-address"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.cloud-vm=", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the management interface"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Public IP address for the management interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "prune-on-sdb"=>"cfg.general.cloud-vm=", "subtype"=>"ip-address", "help-string"=>"IP netmask for the management interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.cloud-vm=", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.cloud-vm=", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.cloud-vm=", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods ares supported.", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/radius]/@name", "#config/shared/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "#config/shared/authentication-profile/entry[method/saml-idp]/@name", "##/panorama/authentication-profile/entry[method/saml-idp]/@name", "#config/shared/authentication-sequence/entry/@name", "##/panorama/authentication-sequence/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "syslog-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"client certificate for syslog", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["##/panorama/ssl-tls-service-profile/entry/@name"]}, "fqdn-refresh-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "help-string"=> "Seconds for Periodic Timer to refresh expired FQDN object entries", "min"=>"600", "max"=>"14399", "default"=>"1800"}, "fqdn-forcerefresh-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "help-string"=> "Seconds for Periodic Timer to force refresh FQDN object entries", "min"=>"14400", "max"=>"86400", "default"=>"14400"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Panorama server IP address"}, "update-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"PaloAlto Networks update server"}, "server-verification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Verify update server identity"}, "secure-proxy-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Secure Proxy server to use"}, "secure-proxy-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for secure proxy server"}, "secure-proxy-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Secure Proxy user name to use"}, "secure-proxy-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "help-string"=>"Secure Proxy password to use"}, "lcaas-use-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy access to CDL"}, "auto-renew-mkey-lifetime__29"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"17520", "default"=>"720", "prune-on"=>"fips-mode", "help-string"=> "Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime."}, "locale"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"system default locale", "default"=>"en", "complete-handler"=>"locale-name-completer", "autocomplete"=>"yes", "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"en", "help-string"=>"English"}, {"value"=>"es", "help-string"=>"Spanish"}, {"value"=>"ja", "help-string"=>"Japanese"}, {"value"=>"fr", "help-string"=>"French"}, {"value"=>"zh_CN", "help-string"=>"Chinese-Simplified"}, {"value"=>"zh_TW", "help-string"=>"Chinese-Traditional"}]}}, "domain-lookup-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"512"}, "ip-address-lookup-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"512"}, "timezone"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"Africa/Abidjan"}, {"value"=>"Africa/Accra"}, {"value"=>"Africa/Addis_Ababa"}, {"value"=>"Africa/Algiers"}, {"value"=>"Africa/Asmara"}, {"value"=>"Africa/Asmera"}, {"value"=>"Africa/Bamako"}, {"value"=>"Africa/Bangui"}, {"value"=>"Africa/Banjul"}, {"value"=>"Africa/Bissau"}, {"value"=>"Africa/Blantyre"}, {"value"=>"Africa/Brazzaville"}, {"value"=>"Africa/Bujumbura"}, {"value"=>"Africa/Cairo"}, {"value"=>"Africa/Casablanca"}, {"value"=>"Africa/Ceuta"}, {"value"=>"Africa/Conakry"}, {"value"=>"Africa/Dakar"}, {"value"=>"Africa/Dar_es_Salaam"}, {"value"=>"Africa/Djibouti"}, {"value"=>"Africa/Douala"}, {"value"=>"Africa/El_Aaiun"}, {"value"=>"Africa/Freetown"}, {"value"=>"Africa/Gaborone"}, {"value"=>"Africa/Harare"}, {"value"=>"Africa/Johannesburg"}, {"value"=>"Africa/Kampala"}, {"value"=>"Africa/Khartoum"}, {"value"=>"Africa/Kigali"}, {"value"=>"Africa/Kinshasa"}, {"value"=>"Africa/Lagos"}, {"value"=>"Africa/Libreville"}, {"value"=>"Africa/Lome"}, {"value"=>"Africa/Luanda"}, {"value"=>"Africa/Lubumbashi"}, {"value"=>"Africa/Lusaka"}, {"value"=>"Africa/Malabo"}, {"value"=>"Africa/Maputo"}, {"value"=>"Africa/Maseru"}, {"value"=>"Africa/Mbabane"}, {"value"=>"Africa/Mogadishu"}, {"value"=>"Africa/Monrovia"}, {"value"=>"Africa/Nairobi"}, {"value"=>"Africa/Ndjamena"}, {"value"=>"Africa/Niamey"}, {"value"=>"Africa/Nouakchott"}, {"value"=>"Africa/Ouagadougou"}, {"value"=>"Africa/Porto-Novo"}, {"value"=>"Africa/Sao_Tome"}, {"value"=>"Africa/Timbuktu"}, {"value"=>"Africa/Tripoli"}, {"value"=>"Africa/Tunis"}, {"value"=>"Africa/Windhoek"}, {"value"=>"America/Adak"}, {"value"=>"America/Anchorage"}, {"value"=>"America/Anguilla"}, {"value"=>"America/Antigua"}, {"value"=>"America/Araguaina"}, {"value"=>"America/Argentina/Buenos_Aires"}, {"value"=>"America/Argentina/Catamarca"}, {"value"=>"America/Argentina/ComodRivadavia"}, {"value"=>"America/Argentina/Cordoba"}, {"value"=>"America/Argentina/Jujuy"}, {"value"=>"America/Argentina/La_Rioja"}, {"value"=>"America/Argentina/Mendoza"}, {"value"=>"America/Argentina/Rio_Gallegos"}, {"value"=>"America/Argentina/Salta"}, {"value"=>"America/Argentina/San_Juan"}, {"value"=>"America/Argentina/San_Luis"}, {"value"=>"America/Argentina/Tucuman"}, {"value"=>"America/Argentina/Ushuaia"}, {"value"=>"America/Aruba"}, {"value"=>"America/Asuncion"}, {"value"=>"America/Atikokan"}, {"value"=>"America/Atka"}, {"value"=>"America/Bahia"}, {"value"=>"America/Barbados"}, {"value"=>"America/Belem"}, {"value"=>"America/Belize"}, {"value"=>"America/Blanc-Sablon"}, {"value"=>"America/Boa_Vista"}, {"value"=>"America/Bogota"}, {"value"=>"America/Boise"}, {"value"=>"America/Buenos_Aires"}, {"value"=>"America/Cambridge_Bay"}, {"value"=>"America/Campo_Grande"}, {"value"=>"America/Cancun"}, {"value"=>"America/Caracas"}, {"value"=>"America/Catamarca"}, {"value"=>"America/Cayenne"}, {"value"=>"America/Cayman"}, {"value"=>"America/Chicago"}, {"value"=>"America/Chihuahua"}, {"value"=>"America/Coral_Harbour"}, {"value"=>"America/Cordoba"}, {"value"=>"America/Costa_Rica"}, {"value"=>"America/Cuiaba"}, {"value"=>"America/Curacao"}, {"value"=>"America/Danmarkshavn"}, {"value"=>"America/Dawson"}, {"value"=>"America/Dawson_Creek"}, {"value"=>"America/Denver"}, {"value"=>"America/Detroit"}, {"value"=>"America/Dominica"}, {"value"=>"America/Edmonton"}, {"value"=>"America/Eirunepe"}, {"value"=>"America/El_Salvador"}, {"value"=>"America/Ensenada"}, {"value"=>"America/Fortaleza"}, {"value"=>"America/Fort_Wayne"}, {"value"=>"America/Glace_Bay"}, {"value"=>"America/Godthab"}, {"value"=>"America/Goose_Bay"}, {"value"=>"America/Grand_Turk"}, {"value"=>"America/Grenada"}, {"value"=>"America/Guadeloupe"}, {"value"=>"America/Guatemala"}, {"value"=>"America/Guayaquil"}, {"value"=>"America/Guyana"}, {"value"=>"America/Halifax"}, {"value"=>"America/Havana"}, {"value"=>"America/Hermosillo"}, {"value"=>"America/Indiana/Indianapolis"}, {"value"=>"America/Indiana/Knox"}, {"value"=>"America/Indiana/Marengo"}, {"value"=>"America/Indiana/Petersburg"}, {"value"=>"America/Indianapolis"}, {"value"=>"America/Indiana/Tell_City"}, {"value"=>"America/Indiana/Vevay"}, {"value"=>"America/Indiana/Vincennes"}, {"value"=>"America/Indiana/Winamac"}, {"value"=>"America/Inuvik"}, {"value"=>"America/Iqaluit"}, {"value"=>"America/Jamaica"}, {"value"=>"America/Jujuy"}, {"value"=>"America/Juneau"}, {"value"=>"America/Kentucky/Louisville"}, {"value"=>"America/Kentucky/Monticello"}, {"value"=>"America/Knox_IN"}, {"value"=>"America/La_Paz"}, {"value"=>"America/Lima"}, {"value"=>"America/Los_Angeles"}, {"value"=>"America/Louisville"}, {"value"=>"America/Maceio"}, {"value"=>"America/Managua"}, {"value"=>"America/Manaus"}, {"value"=>"America/Marigot"}, {"value"=>"America/Martinique"}, {"value"=>"America/Mazatlan"}, {"value"=>"America/Mendoza"}, {"value"=>"America/Menominee"}, {"value"=>"America/Merida"}, {"value"=>"America/Mexico_City"}, {"value"=>"America/Miquelon"}, {"value"=>"America/Moncton"}, {"value"=>"America/Monterrey"}, {"value"=>"America/Montevideo"}, {"value"=>"America/Montreal"}, {"value"=>"America/Montserrat"}, {"value"=>"America/Nassau"}, {"value"=>"America/New_York"}, {"value"=>"America/Nipigon"}, {"value"=>"America/Nome"}, {"value"=>"America/Noronha"}, {"value"=>"America/North_Dakota/Center"}, {"value"=>"America/North_Dakota/New_Salem"}, {"value"=>"America/Panama"}, {"value"=>"America/Pangnirtung"}, {"value"=>"America/Paramaribo"}, {"value"=>"America/Phoenix"}, {"value"=>"America/Port-au-Prince"}, {"value"=>"America/Porto_Acre"}, {"value"=>"America/Port_of_Spain"}, {"value"=>"America/Porto_Velho"}, {"value"=>"America/Puerto_Rico"}, {"value"=>"America/Rainy_River"}, {"value"=>"America/Rankin_Inlet"}, {"value"=>"America/Recife"}, {"value"=>"America/Regina"}, {"value"=>"America/Resolute"}, {"value"=>"America/Rio_Branco"}, {"value"=>"America/Rosario"}, {"value"=>"America/Santarem"}, {"value"=>"America/Santiago"}, {"value"=>"America/Santo_Domingo"}, {"value"=>"America/Sao_Paulo"}, {"value"=>"America/Scoresbysund"}, {"value"=>"America/Shiprock"}, {"value"=>"America/St_Barthelemy"}, {"value"=>"America/St_Johns"}, {"value"=>"America/St_Kitts"}, {"value"=>"America/St_Lucia"}, {"value"=>"America/St_Thomas"}, {"value"=>"America/St_Vincent"}, {"value"=>"America/Swift_Current"}, {"value"=>"America/Tegucigalpa"}, {"value"=>"America/Thule"}, {"value"=>"America/Thunder_Bay"}, {"value"=>"America/Tijuana"}, {"value"=>"America/Toronto"}, {"value"=>"America/Tortola"}, {"value"=>"America/Vancouver"}, {"value"=>"America/Virgin"}, {"value"=>"America/Whitehorse"}, {"value"=>"America/Winnipeg"}, {"value"=>"America/Yakutat"}, {"value"=>"America/Yellowknife"}, {"value"=>"Antarctica/Casey"}, {"value"=>"Antarctica/Davis"}, {"value"=>"Antarctica/DumontDUrville"}, {"value"=>"Antarctica/Mawson"}, {"value"=>"Antarctica/McMurdo"}, {"value"=>"Antarctica/Palmer"}, {"value"=>"Antarctica/Rothera"}, {"value"=>"Antarctica/South_Pole"}, {"value"=>"Antarctica/Syowa"}, {"value"=>"Antarctica/Vostok"}, {"value"=>"Arctic/Longyearbyen"}, {"value"=>"Asia/Aden"}, {"value"=>"Asia/Almaty"}, {"value"=>"Asia/Amman"}, {"value"=>"Asia/Anadyr"}, {"value"=>"Asia/Aqtau"}, {"value"=>"Asia/Aqtobe"}, {"value"=>"Asia/Ashgabat"}, {"value"=>"Asia/Ashkhabad"}, {"value"=>"Asia/Baghdad"}, {"value"=>"Asia/Bahrain"}, {"value"=>"Asia/Baku"}, {"value"=>"Asia/Bangkok"}, {"value"=>"Asia/Beirut"}, {"value"=>"Asia/Bishkek"}, {"value"=>"Asia/Brunei"}, {"value"=>"Asia/Calcutta"}, {"value"=>"Asia/Choibalsan"}, {"value"=>"Asia/Chongqing"}, {"value"=>"Asia/Chungking"}, {"value"=>"Asia/Colombo"}, {"value"=>"Asia/Dacca"}, {"value"=>"Asia/Damascus"}, {"value"=>"Asia/Dhaka"}, {"value"=>"Asia/Dili"}, {"value"=>"Asia/Dubai"}, {"value"=>"Asia/Dushanbe"}, {"value"=>"Asia/Gaza"}, {"value"=>"Asia/Harbin"}, {"value"=>"Asia/Ho_Chi_Minh"}, {"value"=>"Asia/Hong_Kong"}, {"value"=>"Asia/Hovd"}, {"value"=>"Asia/Irkutsk"}, {"value"=>"Asia/Istanbul"}, {"value"=>"Asia/Jakarta"}, {"value"=>"Asia/Jayapura"}, {"value"=>"Asia/Jerusalem"}, {"value"=>"Asia/Kabul"}, {"value"=>"Asia/Kamchatka"}, {"value"=>"Asia/Karachi"}, {"value"=>"Asia/Kashgar"}, {"value"=>"Asia/Kathmandu"}, {"value"=>"Asia/Katmandu"}, {"value"=>"Asia/Kolkata"}, {"value"=>"Asia/Krasnoyarsk"}, {"value"=>"Asia/Kuala_Lumpur"}, {"value"=>"Asia/Kuching"}, {"value"=>"Asia/Kuwait"}, {"value"=>"Asia/Macao"}, {"value"=>"Asia/Macau"}, {"value"=>"Asia/Magadan"}, {"value"=>"Asia/Makassar"}, {"value"=>"Asia/Manila"}, {"value"=>"Asia/Muscat"}, {"value"=>"Asia/Nicosia"}, {"value"=>"Asia/Novokuznetsk"}, {"value"=>"Asia/Novosibirsk"}, {"value"=>"Asia/Omsk"}, {"value"=>"Asia/Oral"}, {"value"=>"Asia/Phnom_Penh"}, {"value"=>"Asia/Pontianak"}, {"value"=>"Asia/Pyongyang"}, {"value"=>"Asia/Qatar"}, {"value"=>"Asia/Qyzylorda"}, {"value"=>"Asia/Rangoon"}, {"value"=>"Asia/Riyadh"}, {"value"=>"Asia/Riyadh87"}, {"value"=>"Asia/Riyadh88"}, {"value"=>"Asia/Riyadh89"}, {"value"=>"Asia/Saigon"}, {"value"=>"Asia/Sakhalin"}, {"value"=>"Asia/Samarkand"}, {"value"=>"Asia/Seoul"}, {"value"=>"Asia/Shanghai"}, {"value"=>"Asia/Singapore"}, {"value"=>"Asia/Taipei"}, {"value"=>"Asia/Tashkent"}, {"value"=>"Asia/Tbilisi"}, {"value"=>"Asia/Tehran"}, {"value"=>"Asia/Tel_Aviv"}, {"value"=>"Asia/Thimbu"}, {"value"=>"Asia/Thimphu"}, {"value"=>"Asia/Tokyo"}, {"value"=>"Asia/Ujung_Pandang"}, {"value"=>"Asia/Ulaanbaatar"}, {"value"=>"Asia/Ulan_Bator"}, {"value"=>"Asia/Urumqi"}, {"value"=>"Asia/Vientiane"}, {"value"=>"Asia/Vladivostok"}, {"value"=>"Asia/Yakutsk"}, {"value"=>"Asia/Yekaterinburg"}, {"value"=>"Asia/Yerevan"}, {"value"=>"Atlantic/Azores"}, {"value"=>"Atlantic/Bermuda"}, {"value"=>"Atlantic/Canary"}, {"value"=>"Atlantic/Cape_Verde"}, {"value"=>"Atlantic/Faeroe"}, {"value"=>"Atlantic/Faroe"}, {"value"=>"Atlantic/Jan_Mayen"}, {"value"=>"Atlantic/Madeira"}, {"value"=>"Atlantic/Reykjavik"}, {"value"=>"Atlantic/South_Georgia"}, {"value"=>"Atlantic/Stanley"}, {"value"=>"Atlantic/St_Helena"}, {"value"=>"Australia/ACT"}, {"value"=>"Australia/Adelaide"}, {"value"=>"Australia/Brisbane"}, {"value"=>"Australia/Broken_Hill"}, {"value"=>"Australia/Canberra"}, {"value"=>"Australia/Currie"}, {"value"=>"Australia/Darwin"}, {"value"=>"Australia/Eucla"}, {"value"=>"Australia/Hobart"}, {"value"=>"Australia/LHI"}, {"value"=>"Australia/Lindeman"}, {"value"=>"Australia/Lord_Howe"}, {"value"=>"Australia/Melbourne"}, {"value"=>"Australia/North"}, {"value"=>"Australia/NSW"}, {"value"=>"Australia/Perth"}, {"value"=>"Australia/Queensland"}, {"value"=>"Australia/South"}, {"value"=>"Australia/Sydney"}, {"value"=>"Australia/Tasmania"}, {"value"=>"Australia/Victoria"}, {"value"=>"Australia/West"}, {"value"=>"Australia/Yancowinna"}, {"value"=>"Brazil/Acre"}, {"value"=>"Brazil/DeNoronha"}, {"value"=>"Brazil/East"}, {"value"=>"Brazil/West"}, {"value"=>"Canada/Atlantic"}, {"value"=>"Canada/Central"}, {"value"=>"Canada/Eastern"}, {"value"=>"Canada/East-Saskatchewan"}, {"value"=>"Canada/Mountain"}, {"value"=>"Canada/Newfoundland"}, {"value"=>"Canada/Pacific"}, {"value"=>"Canada/Saskatchewan"}, {"value"=>"Canada/Yukon"}, {"value"=>"CET"}, {"value"=>"Chile/Continental"}, {"value"=>"Chile/EasterIsland"}, {"value"=>"CST6CDT"}, {"value"=>"Cuba"}, {"value"=>"EET"}, {"value"=>"Egypt"}, {"value"=>"Eire"}, {"value"=>"EST"}, {"value"=>"EST5EDT"}, {"value"=>"Etc/GMT"}, {"value"=>"Etc/GMT0"}, {"value"=>"Etc/GMT-0"}, {"value"=>"Etc/GMT+0"}, {"value"=>"Etc/GMT-1"}, {"value"=>"Etc/GMT+1"}, {"value"=>"Etc/GMT-10"}, {"value"=>"Etc/GMT+10"}, {"value"=>"Etc/GMT-11"}, {"value"=>"Etc/GMT+11"}, {"value"=>"Etc/GMT-12"}, {"value"=>"Etc/GMT+12"}, {"value"=>"Etc/GMT-13"}, {"value"=>"Etc/GMT-14"}, {"value"=>"Etc/GMT-2"}, {"value"=>"Etc/GMT+2"}, {"value"=>"Etc/GMT-3"}, {"value"=>"Etc/GMT+3"}, {"value"=>"Etc/GMT-4"}, {"value"=>"Etc/GMT+4"}, {"value"=>"Etc/GMT-5"}, {"value"=>"Etc/GMT+5"}, {"value"=>"Etc/GMT-6"}, {"value"=>"Etc/GMT+6"}, {"value"=>"Etc/GMT-7"}, {"value"=>"Etc/GMT+7"}, {"value"=>"Etc/GMT-8"}, {"value"=>"Etc/GMT+8"}, {"value"=>"Etc/GMT-9"}, {"value"=>"Etc/GMT+9"}, {"value"=>"Etc/Greenwich"}, {"value"=>"Etc/UCT"}, {"value"=>"Etc/Universal"}, {"value"=>"Etc/UTC"}, {"value"=>"Etc/Zulu"}, {"value"=>"Europe/Amsterdam"}, {"value"=>"Europe/Andorra"}, {"value"=>"Europe/Athens"}, {"value"=>"Europe/Belfast"}, {"value"=>"Europe/Belgrade"}, {"value"=>"Europe/Berlin"}, {"value"=>"Europe/Bratislava"}, {"value"=>"Europe/Brussels"}, {"value"=>"Europe/Bucharest"}, {"value"=>"Europe/Budapest"}, {"value"=>"Europe/Chisinau"}, {"value"=>"Europe/Copenhagen"}, {"value"=>"Europe/Dublin"}, {"value"=>"Europe/Gibraltar"}, {"value"=>"Europe/Guernsey"}, {"value"=>"Europe/Helsinki"}, {"value"=>"Europe/Isle_of_Man"}, {"value"=>"Europe/Istanbul"}, {"value"=>"Europe/Jersey"}, {"value"=>"Europe/Kaliningrad"}, {"value"=>"Europe/Kiev"}, {"value"=>"Europe/Lisbon"}, {"value"=>"Europe/Ljubljana"}, {"value"=>"Europe/London"}, {"value"=>"Europe/Luxembourg"}, {"value"=>"Europe/Madrid"}, {"value"=>"Europe/Malta"}, {"value"=>"Europe/Mariehamn"}, {"value"=>"Europe/Minsk"}, {"value"=>"Europe/Monaco"}, {"value"=>"Europe/Moscow"}, {"value"=>"Europe/Nicosia"}, {"value"=>"Europe/Oslo"}, {"value"=>"Europe/Paris"}, {"value"=>"Europe/Podgorica"}, {"value"=>"Europe/Prague"}, {"value"=>"Europe/Riga"}, {"value"=>"Europe/Rome"}, {"value"=>"Europe/Samara"}, {"value"=>"Europe/San_Marino"}, {"value"=>"Europe/Sarajevo"}, {"value"=>"Europe/Simferopol"}, {"value"=>"Europe/Skopje"}, {"value"=>"Europe/Sofia"}, {"value"=>"Europe/Stockholm"}, {"value"=>"Europe/Tallinn"}, {"value"=>"Europe/Tirane"}, {"value"=>"Europe/Tiraspol"}, {"value"=>"Europe/Uzhgorod"}, {"value"=>"Europe/Vaduz"}, {"value"=>"Europe/Vatican"}, {"value"=>"Europe/Vienna"}, {"value"=>"Europe/Vilnius"}, {"value"=>"Europe/Volgograd"}, {"value"=>"Europe/Warsaw"}, {"value"=>"Europe/Zagreb"}, {"value"=>"Europe/Zaporozhye"}, {"value"=>"Europe/Zurich"}, {"value"=>"Factory"}, {"value"=>"GB"}, {"value"=>"GB-Eire"}, {"value"=>"GMT"}, {"value"=>"GMT0"}, {"value"=>"GMT-0"}, {"value"=>"GMT+0"}, {"value"=>"Greenwich"}, {"value"=>"Hongkong"}, {"value"=>"HST"}, {"value"=>"Iceland"}, {"value"=>"Indian/Antananarivo"}, {"value"=>"Indian/Chagos"}, {"value"=>"Indian/Christmas"}, {"value"=>"Indian/Cocos"}, {"value"=>"Indian/Comoro"}, {"value"=>"Indian/Kerguelen"}, {"value"=>"Indian/Mahe"}, {"value"=>"Indian/Maldives"}, {"value"=>"Indian/Mauritius"}, {"value"=>"Indian/Mayotte"}, {"value"=>"Indian/Reunion"}, {"value"=>"Iran"}, {"value"=>"Israel"}, {"value"=>"Jamaica"}, {"value"=>"Japan"}, {"value"=>"Kwajalein"}, {"value"=>"Libya"}, {"value"=>"MET"}, {"value"=>"Mexico/BajaNorte"}, {"value"=>"Mexico/BajaSur"}, {"value"=>"Mexico/General"}, {"value"=>"Mideast/Riyadh87"}, {"value"=>"Mideast/Riyadh88"}, {"value"=>"Mideast/Riyadh89"}, {"value"=>"MST"}, {"value"=>"MST7MDT"}, {"value"=>"Navajo"}, {"value"=>"NZ"}, {"value"=>"NZ-CHAT"}, {"value"=>"Pacific/Apia"}, {"value"=>"Pacific/Auckland"}, {"value"=>"Pacific/Chatham"}, {"value"=>"Pacific/Easter"}, {"value"=>"Pacific/Efate"}, {"value"=>"Pacific/Enderbury"}, {"value"=>"Pacific/Fakaofo"}, {"value"=>"Pacific/Fiji"}, {"value"=>"Pacific/Funafuti"}, {"value"=>"Pacific/Galapagos"}, {"value"=>"Pacific/Gambier"}, {"value"=>"Pacific/Guadalcanal"}, {"value"=>"Pacific/Guam"}, {"value"=>"Pacific/Honolulu"}, {"value"=>"Pacific/Johnston"}, {"value"=>"Pacific/Kiritimati"}, {"value"=>"Pacific/Kosrae"}, {"value"=>"Pacific/Kwajalein"}, {"value"=>"Pacific/Majuro"}, {"value"=>"Pacific/Marquesas"}, {"value"=>"Pacific/Midway"}, {"value"=>"Pacific/Nauru"}, {"value"=>"Pacific/Niue"}, {"value"=>"Pacific/Norfolk"}, {"value"=>"Pacific/Noumea"}, {"value"=>"Pacific/Pago_Pago"}, {"value"=>"Pacific/Palau"}, {"value"=>"Pacific/Pitcairn"}, {"value"=>"Pacific/Ponape"}, {"value"=>"Pacific/Port_Moresby"}, {"value"=>"Pacific/Rarotonga"}, {"value"=>"Pacific/Saipan"}, {"value"=>"Pacific/Samoa"}, {"value"=>"Pacific/Tahiti"}, {"value"=>"Pacific/Tarawa"}, {"value"=>"Pacific/Tongatapu"}, {"value"=>"Pacific/Truk"}, {"value"=>"Pacific/Wake"}, {"value"=>"Pacific/Wallis"}, {"value"=>"Pacific/Yap"}, {"value"=>"Poland"}, {"value"=>"Portugal"}, {"value"=>"PRC"}, {"value"=>"PST8PDT"}, {"value"=>"ROC"}, {"value"=>"ROK"}, {"value"=>"Singapore"}, {"value"=>"Turkey"}, {"value"=>"UCT"}, {"value"=>"Universal"}, {"value"=>"US/Alaska"}, {"value"=>"US/Aleutian"}, {"value"=>"US/Arizona"}, {"value"=>"US/Central"}, {"value"=>"US/Eastern"}, {"value"=>"US/East-Indiana"}, {"value"=>"US/Hawaii"}, {"value"=>"US/Indiana-Starke"}, {"value"=>"US/Michigan"}, {"value"=>"US/Mountain"}, {"value"=>"US/Pacific"}, {"value"=>"US/Samoa"}, {"value"=>"UTC"}, {"value"=>"WET"}, {"value"=>"W-SU"}, {"value"=>"Zulu"}]}} def login_banner prop_get('login-banner') end def login_banner=(val) prop_set('login-banner', val) end # Force Admins to Acknowledge Login Banner def ack_login_banner prop_get('ack-login-banner') end # Force Admins to Acknowledge Login Banner def ack_login_banner=(val) prop_set('ack-login-banner', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def domain prop_get('domain') end def domain=(val) prop_set('domain', val) end # Common name recognized by devices, if different from ip-address def common_name_for_certificate prop_get('common-name-for-certificate') end # Common name recognized by devices, if different from ip-address def common_name_for_certificate=(val) prop_set('common-name-for-certificate', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # Public IP address for the management interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the management interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods ares supported. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods ares supported. def authentication_profile=(val) prop_set('authentication-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # client certificate for syslog def syslog_certificate prop_get('syslog-certificate') end # client certificate for syslog def syslog_certificate=(val) prop_set('syslog-certificate', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Seconds for Periodic Timer to refresh expired FQDN object entries def fqdn_refresh_time prop_get('fqdn-refresh-time') end # Seconds for Periodic Timer to refresh expired FQDN object entries def fqdn_refresh_time=(val) prop_set('fqdn-refresh-time', val) end # Seconds for Periodic Timer to force refresh FQDN object entries def fqdn_forcerefresh_time prop_get('fqdn-forcerefresh-time') end # Seconds for Periodic Timer to force refresh FQDN object entries def fqdn_forcerefresh_time=(val) prop_set('fqdn-forcerefresh-time', val) end # Panorama server IP address def panorama_server prop_get('panorama-server') end # Panorama server IP address def panorama_server=(val) prop_set('panorama-server', val) end # PaloAlto Networks update server def update_server prop_get('update-server') end # PaloAlto Networks update server def update_server=(val) prop_set('update-server', val) end # Verify update server identity def server_verification prop_get('server-verification') end # Verify update server identity def server_verification=(val) prop_set('server-verification', val) end # Secure Proxy server to use def secure_proxy_server prop_get('secure-proxy-server') end # Secure Proxy server to use def secure_proxy_server=(val) prop_set('secure-proxy-server', val) end # Port for secure proxy server def secure_proxy_port prop_get('secure-proxy-port') end # Port for secure proxy server def secure_proxy_port=(val) prop_set('secure-proxy-port', val) end # Secure Proxy user name to use def secure_proxy_user prop_get('secure-proxy-user') end # Secure Proxy user name to use def secure_proxy_user=(val) prop_set('secure-proxy-user', val) end # Secure Proxy password to use def secure_proxy_password prop_get('secure-proxy-password') end # Secure Proxy password to use def secure_proxy_password=(val) prop_set('secure-proxy-password', val) end # Enable proxy access to CDL def lcaas_use_proxy prop_get('lcaas-use-proxy') end # Enable proxy access to CDL def lcaas_use_proxy=(val) prop_set('lcaas-use-proxy', val) end # Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime. def auto_renew_mkey_lifetime__29 prop_get('auto-renew-mkey-lifetime__29') end # Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime. def auto_renew_mkey_lifetime__29=(val) prop_set('auto-renew-mkey-lifetime__29', val) end # system default locale def locale prop_get('locale') end # system default locale def locale=(val) prop_set('locale', val) end def domain_lookup_url prop_get('domain-lookup-url') end def domain_lookup_url=(val) prop_set('domain-lookup-url', val) end def ip_address_lookup_url prop_get('ip-address-lookup-url') end def ip_address_lookup_url=(val) prop_set('ip-address-lookup-url', val) end def timezone prop_get('timezone') end def timezone=(val) prop_set('timezone', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Management < ConfigClass def has_multiple_values? false end def _section :'management' end class Initcfg < ConfigClass def has_multiple_values? false end def _section :'initcfg' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={"send-hostname"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "send-client-id"=>{"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-hostname"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-domain"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}} def send_hostname prop_get('send-hostname') end def send_hostname=(val) prop_set('send-hostname', val) end def send_client_id prop_get('send-client-id') end def send_client_id=(val) prop_set('send-client-id', val) end def accept_dhcp_hostname prop_get('accept-dhcp-hostname') end def accept_dhcp_hostname=(val) prop_set('accept-dhcp-hostname', val) end def accept_dhcp_domain prop_get('accept-dhcp-domain') end def accept_dhcp_domain=(val) prop_set('accept-dhcp-domain', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "dns-primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "dns-secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes"}, "auth-key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string"}, "username"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "userpassword"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "agent-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "hostInfo-agentId"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "hostInfo-hostName"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "public-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"(([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?){1}", "maxlen"=>"2048"}, "op-command-modes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "vm-auth-key"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}} def ip_address prop_get('ip-address') end def ip_address=(val) prop_set('ip-address', val) end def netmask prop_get('netmask') end def netmask=(val) prop_set('netmask', val) end def default_gateway prop_get('default-gateway') end def default_gateway=(val) prop_set('default-gateway', val) end def panorama_server prop_get('panorama-server') end def panorama_server=(val) prop_set('panorama-server', val) end def panorama_server_2 prop_get('panorama-server-2') end def panorama_server_2=(val) prop_set('panorama-server-2', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def dns_primary prop_get('dns-primary') end def dns_primary=(val) prop_set('dns-primary', val) end def dns_secondary prop_get('dns-secondary') end def dns_secondary=(val) prop_set('dns-secondary', val) end def ipv6_address prop_get('ipv6-address') end def ipv6_address=(val) prop_set('ipv6-address', val) end def ipv6_default_gateway prop_get('ipv6-default-gateway') end def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def auth_key prop_get('auth-key') end def auth_key=(val) prop_set('auth-key', val) end def username prop_get('username') end def username=(val) prop_set('username', val) end def userpassword prop_get('userpassword') end def userpassword=(val) prop_set('userpassword', val) end def agent_name prop_get('agent-name') end def agent_name=(val) prop_set('agent-name', val) end def hostInfo_agentId prop_get('hostInfo-agentId') end def hostInfo_agentId=(val) prop_set('hostInfo-agentId', val) end def hostInfo_hostName prop_get('hostInfo-hostName') end def hostInfo_hostName=(val) prop_set('hostInfo-hostName', val) end def public_key prop_get('public-key') end def public_key=(val) prop_set('public-key', val) end def op_command_modes prop_get('op-command-modes') end def op_command_modes=(val) prop_set('op-command-modes', val) end def vm_auth_key prop_get('vm-auth-key') end def vm_auth_key=(val) prop_set('vm-auth-key', val) end end # class Initcfg def initcfg @subclasses['initcfg'] ||= Initcfg.new(parent_instance: self, create_children: @create_children) end class QuotaSettings < ConfigClass def has_multiple_values? false end def _section :'quota-settings' end class DiskQuota < ConfigClass def has_multiple_values? false end def _section :'disk-quota' end @props={"traffic"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "threat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "config"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"configuration logs quota percentage"}, "system"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"system logs quota percentage"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"globalprotect logs quota percentage"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "appstat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application statistics quota percentage"}, "trsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "thsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"url summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hipmatch"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hip match quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly traffic summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily traffic summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly traffic summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly threat summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily threat summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly threat summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly url summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily url summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly url summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat packet capture quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly Tunnel and GTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily Tunnel and GTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly Tunnel and GTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly decryption summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily decryption summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly decryption summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly SCTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily SCTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly SCTP summary quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"User ID logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Authentication logs quota percentage", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=management-only,cfg.cms.mode=init"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"IP Tag logs quota percentage"}, "hip-reports"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"host information profile quota percentage"}} # traffic logs quota percentage def traffic prop_get('traffic') end # traffic logs quota percentage def traffic=(val) prop_set('traffic', val) end # threat logs quota percentage def threat prop_get('threat') end # threat logs quota percentage def threat=(val) prop_set('threat', val) end # configuration logs quota percentage def config prop_get('config') end # configuration logs quota percentage def config=(val) prop_set('config', val) end # system logs quota percentage def system prop_get('system') end # system logs quota percentage def system=(val) prop_set('system', val) end # globalprotect logs quota percentage def globalprotect prop_get('globalprotect') end # globalprotect logs quota percentage def globalprotect=(val) prop_set('globalprotect', val) end # decryption summary quota percentage def desum prop_get('desum') end # decryption summary quota percentage def desum=(val) prop_set('desum', val) end # decryption logs quota percentage def decryption prop_get('decryption') end # decryption logs quota percentage def decryption=(val) prop_set('decryption', val) end # application statistics quota percentage def appstat prop_get('appstat') end # application statistics quota percentage def appstat=(val) prop_set('appstat', val) end # traffic summary quota percentage def trsum prop_get('trsum') end # traffic summary quota percentage def trsum=(val) prop_set('trsum', val) end # threat summary quota percentage def thsum prop_get('thsum') end # threat summary quota percentage def thsum=(val) prop_set('thsum', val) end # url summary quota percentage def urlsum prop_get('urlsum') end # url summary quota percentage def urlsum=(val) prop_set('urlsum', val) end # Hip match quota percentage def hipmatch prop_get('hipmatch') end # Hip match quota percentage def hipmatch=(val) prop_set('hipmatch', val) end # Hourly traffic summary quota percentage def hourlytrsum prop_get('hourlytrsum') end # Hourly traffic summary quota percentage def hourlytrsum=(val) prop_set('hourlytrsum', val) end # Daily traffic summary quota percentage def dailytrsum prop_get('dailytrsum') end # Daily traffic summary quota percentage def dailytrsum=(val) prop_set('dailytrsum', val) end # Weekly traffic summary quota percentage def weeklytrsum prop_get('weeklytrsum') end # Weekly traffic summary quota percentage def weeklytrsum=(val) prop_set('weeklytrsum', val) end # Hourly threat summary quota percentage def hourlythsum prop_get('hourlythsum') end # Hourly threat summary quota percentage def hourlythsum=(val) prop_set('hourlythsum', val) end # Daily threat summary quota percentage def dailythsum prop_get('dailythsum') end # Daily threat summary quota percentage def dailythsum=(val) prop_set('dailythsum', val) end # Weekly threat summary quota percentage def weeklythsum prop_get('weeklythsum') end # Weekly threat summary quota percentage def weeklythsum=(val) prop_set('weeklythsum', val) end # Hourly url summary quota percentage def hourlyurlsum prop_get('hourlyurlsum') end # Hourly url summary quota percentage def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # Daily url summary quota percentage def dailyurlsum prop_get('dailyurlsum') end # Daily url summary quota percentage def dailyurlsum=(val) prop_set('dailyurlsum', val) end # Weekly url summary quota percentage def weeklyurlsum prop_get('weeklyurlsum') end # Weekly url summary quota percentage def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # threat packet capture quota percentage def threat_pcaps prop_get('threat-pcaps') end # threat packet capture quota percentage def threat_pcaps=(val) prop_set('threat-pcaps', val) end # Tunnel and GTP logs quota percentage def gtp prop_get('gtp') end # Tunnel and GTP logs quota percentage def gtp=(val) prop_set('gtp', val) end # Tunnel and GTP summary quota percentage def gtpsum prop_get('gtpsum') end # Tunnel and GTP summary quota percentage def gtpsum=(val) prop_set('gtpsum', val) end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum prop_get('hourlygtpsum') end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # Daily Tunnel and GTP summary quota percentage def dailygtpsum prop_get('dailygtpsum') end # Daily Tunnel and GTP summary quota percentage def dailygtpsum=(val) prop_set('dailygtpsum', val) end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum prop_get('weeklygtpsum') end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # Hourly decryption summary quota percentage def hourlydesum prop_get('hourlydesum') end # Hourly decryption summary quota percentage def hourlydesum=(val) prop_set('hourlydesum', val) end # Daily decryption summary quota percentage def dailydesum prop_get('dailydesum') end # Daily decryption summary quota percentage def dailydesum=(val) prop_set('dailydesum', val) end # Weekly decryption summary quota percentage def weeklydesum prop_get('weeklydesum') end # Weekly decryption summary quota percentage def weeklydesum=(val) prop_set('weeklydesum', val) end # SCTP logs quota percentage def sctp prop_get('sctp') end # SCTP logs quota percentage def sctp=(val) prop_set('sctp', val) end # SCTP summary quota percentage def sctpsum prop_get('sctpsum') end # SCTP summary quota percentage def sctpsum=(val) prop_set('sctpsum', val) end # Hourly SCTP summary quota percentage def hourlysctpsum prop_get('hourlysctpsum') end # Hourly SCTP summary quota percentage def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # Daily SCTP summary quota percentage def dailysctpsum prop_get('dailysctpsum') end # Daily SCTP summary quota percentage def dailysctpsum=(val) prop_set('dailysctpsum', val) end # Weekly SCTP summary quota percentage def weeklysctpsum prop_get('weeklysctpsum') end # Weekly SCTP summary quota percentage def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end # User ID logs quota percentage def userid prop_get('userid') end # User ID logs quota percentage def userid=(val) prop_set('userid', val) end # Authentication logs quota percentage def auth prop_get('auth') end # Authentication logs quota percentage def auth=(val) prop_set('auth', val) end # IP Tag logs quota percentage def iptag prop_get('iptag') end # IP Tag logs quota percentage def iptag=(val) prop_set('iptag', val) end # host information profile quota percentage def hip_reports prop_get('hip-reports') end # host information profile quota percentage def hip_reports=(val) prop_set('hip-reports', val) end end # class DiskQuota def disk_quota @subclasses['disk-quota'] ||= DiskQuota.new(parent_instance: self, create_children: @create_children) end class LogExpirationPeriod < ConfigClass def has_multiple_values? false end def _section :'log-expiration-period' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for traffic logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for decryption logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for config logs"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for system logs"}, "appstat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for appstat logs"}, "trsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "thsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for urlsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for desum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hipmatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hipmatch logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlytrsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailytrsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklytrsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlythsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailythsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklythsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlyurlsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailyurlsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklyurlsum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat-pcaps logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp summary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly tunnel and gtp summmary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily tunnel and gtp summary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly tunnel and gtp summary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlydesum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailydesum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklydesum logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp summary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly sctp summmary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily sctp summary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly sctp summary logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for User-ID logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for iptag logs"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for authentication logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for globalprotect logs", "prune-on-sdb"=> "cfg.cms.mode=panorama,cfg.cms.mode=logger,cfg.cms.mode=init"}, "hip-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hip-reports logs"}} # expiration period for traffic logs def traffic prop_get('traffic') end # expiration period for traffic logs def traffic=(val) prop_set('traffic', val) end # expiration period for threat logs def threat prop_get('threat') end # expiration period for threat logs def threat=(val) prop_set('threat', val) end # expiration period for decryption logs def decryption prop_get('decryption') end # expiration period for decryption logs def decryption=(val) prop_set('decryption', val) end # expiration period for config logs def config prop_get('config') end # expiration period for config logs def config=(val) prop_set('config', val) end # expiration period for system logs def system prop_get('system') end # expiration period for system logs def system=(val) prop_set('system', val) end # expiration period for appstat logs def appstat prop_get('appstat') end # expiration period for appstat logs def appstat=(val) prop_set('appstat', val) end # expiration period for trsum logs def trsum prop_get('trsum') end # expiration period for trsum logs def trsum=(val) prop_set('trsum', val) end # expiration period for trsum logs def thsum prop_get('thsum') end # expiration period for trsum logs def thsum=(val) prop_set('thsum', val) end # expiration period for urlsum logs def urlsum prop_get('urlsum') end # expiration period for urlsum logs def urlsum=(val) prop_set('urlsum', val) end # expiration period for desum logs def desum prop_get('desum') end # expiration period for desum logs def desum=(val) prop_set('desum', val) end # expiration period for hipmatch logs def hipmatch prop_get('hipmatch') end # expiration period for hipmatch logs def hipmatch=(val) prop_set('hipmatch', val) end # expiration period for hourlytrsum logs def hourlytrsum prop_get('hourlytrsum') end # expiration period for hourlytrsum logs def hourlytrsum=(val) prop_set('hourlytrsum', val) end # expiration period for dailytrsum logs def dailytrsum prop_get('dailytrsum') end # expiration period for dailytrsum logs def dailytrsum=(val) prop_set('dailytrsum', val) end # expiration period for weeklytrsum logs def weeklytrsum prop_get('weeklytrsum') end # expiration period for weeklytrsum logs def weeklytrsum=(val) prop_set('weeklytrsum', val) end # expiration period for hourlythsum logs def hourlythsum prop_get('hourlythsum') end # expiration period for hourlythsum logs def hourlythsum=(val) prop_set('hourlythsum', val) end # expiration period for dailythsum logs def dailythsum prop_get('dailythsum') end # expiration period for dailythsum logs def dailythsum=(val) prop_set('dailythsum', val) end # expiration period for weeklythsum logs def weeklythsum prop_get('weeklythsum') end # expiration period for weeklythsum logs def weeklythsum=(val) prop_set('weeklythsum', val) end # expiration period for hourlyurlsum logs def hourlyurlsum prop_get('hourlyurlsum') end # expiration period for hourlyurlsum logs def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # expiration period for dailyurlsum logs def dailyurlsum prop_get('dailyurlsum') end # expiration period for dailyurlsum logs def dailyurlsum=(val) prop_set('dailyurlsum', val) end # expiration period for weeklyurlsum logs def weeklyurlsum prop_get('weeklyurlsum') end # expiration period for weeklyurlsum logs def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # expiration period for threat-pcaps logs def threat_pcaps prop_get('threat-pcaps') end # expiration period for threat-pcaps logs def threat_pcaps=(val) prop_set('threat-pcaps', val) end # expiration period for tunnel and gtp logs def gtp prop_get('gtp') end # expiration period for tunnel and gtp logs def gtp=(val) prop_set('gtp', val) end # expiration period for tunnel and gtp summary logs def gtpsum prop_get('gtpsum') end # expiration period for tunnel and gtp summary logs def gtpsum=(val) prop_set('gtpsum', val) end # expiration period for hourly tunnel and gtp summmary logs def hourlygtpsum prop_get('hourlygtpsum') end # expiration period for hourly tunnel and gtp summmary logs def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # expiration period for daily tunnel and gtp summary logs def dailygtpsum prop_get('dailygtpsum') end # expiration period for daily tunnel and gtp summary logs def dailygtpsum=(val) prop_set('dailygtpsum', val) end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum prop_get('weeklygtpsum') end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # expiration period for hourlydesum logs def hourlydesum prop_get('hourlydesum') end # expiration period for hourlydesum logs def hourlydesum=(val) prop_set('hourlydesum', val) end # expiration period for dailydesum logs def dailydesum prop_get('dailydesum') end # expiration period for dailydesum logs def dailydesum=(val) prop_set('dailydesum', val) end # expiration period for weeklydesum logs def weeklydesum prop_get('weeklydesum') end # expiration period for weeklydesum logs def weeklydesum=(val) prop_set('weeklydesum', val) end # expiration period for sctp logs def sctp prop_get('sctp') end # expiration period for sctp logs def sctp=(val) prop_set('sctp', val) end # expiration period for sctp summary logs def sctpsum prop_get('sctpsum') end # expiration period for sctp summary logs def sctpsum=(val) prop_set('sctpsum', val) end # expiration period for hourly sctp summmary logs def hourlysctpsum prop_get('hourlysctpsum') end # expiration period for hourly sctp summmary logs def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # expiration period for daily sctp summary logs def dailysctpsum prop_get('dailysctpsum') end # expiration period for daily sctp summary logs def dailysctpsum=(val) prop_set('dailysctpsum', val) end # expiration period for weekly sctp summary logs def weeklysctpsum prop_get('weeklysctpsum') end # expiration period for weekly sctp summary logs def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end # expiration period for User-ID logs def userid prop_get('userid') end # expiration period for User-ID logs def userid=(val) prop_set('userid', val) end # expiration period for iptag logs def iptag prop_get('iptag') end # expiration period for iptag logs def iptag=(val) prop_set('iptag', val) end # expiration period for authentication logs def auth prop_get('auth') end # expiration period for authentication logs def auth=(val) prop_set('auth', val) end # expiration period for globalprotect logs def globalprotect prop_get('globalprotect') end # expiration period for globalprotect logs def globalprotect=(val) prop_set('globalprotect', val) end # expiration period for hip-reports logs def hip_reports prop_get('hip-reports') end # expiration period for hip-reports logs def hip_reports=(val) prop_set('hip-reports', val) end end # class LogExpirationPeriod def log_expiration_period @subclasses['log-expiration-period'] ||= LogExpirationPeriod.new(parent_instance: self, create_children: @create_children) end @props={} end # class QuotaSettings def quota_settings @subclasses['quota-settings'] ||= QuotaSettings.new(parent_instance: self, create_children: @create_children) end class DisablePredefinedReports < XML::ConfigClass def has_multiple_values? true end def _section :'disable-predefined-reports' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"report element", "autocomplete"=>"yes", "memberof"=>["##/predefined/reports/entry/@name"]}} # report element def member prop_get('member') end # report element def member=(val) prop_set('member', val) end end # class DisablePredefinedReports def disable_predefined_reports if @create_children @subclasses['disable-predefined-reports'] ||= DisablePredefinedReports.new(parent_instance: self, create_children: @create_children) else DisablePredefinedReports.new(parent_instance: self) end end class DisablePredefinedCorrelationObjs < XML::ConfigClass def has_multiple_values? true end def _section :'disable-predefined-correlation-objs' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"32", "help-string"=>"Correlation objects"}} # Correlation objects def member prop_get('member') end # Correlation objects def member=(val) prop_set('member', val) end end # class DisablePredefinedCorrelationObjs def disable_predefined_correlation_objs if @create_children @subclasses['disable-predefined-correlation-objs'] ||= DisablePredefinedCorrelationObjs.new(parent_instance: self, create_children: @create_children) else DisablePredefinedCorrelationObjs.new(parent_instance: self) end end class CommonCriteria__6 < ConfigClass def has_multiple_values? false end def _section :'common-criteria__6' end class SelfTestSchedule < ConfigClass def has_multiple_values? false end def _section :'self-test-schedule' end class Crypto < ConfigClass def has_multiple_values? false end def _section :'crypto' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class Crypto def crypto @subclasses['crypto'] ||= Crypto.new(parent_instance: self, create_children: @create_children) end class SoftwareIntegrity < ConfigClass def has_multiple_values? false end def _section :'software-integrity' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class SoftwareIntegrity def software_integrity @subclasses['software-integrity'] ||= SoftwareIntegrity.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelfTestSchedule def self_test_schedule @subclasses['self-test-schedule'] ||= SelfTestSchedule.new(parent_instance: self, create_children: @create_children) end @props={"enable-tls-session-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable logging TLS sessions"}, "enable-ocsp-crl-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable CA (OCSP/CRL) Session Establishment Logging"}} # Enable logging TLS sessions def enable_tls_session_logging prop_get('enable-tls-session-logging') end # Enable logging TLS sessions def enable_tls_session_logging=(val) prop_set('enable-tls-session-logging', val) end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs prop_get('enable-ocsp-crl-logs') end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs=(val) prop_set('enable-ocsp-crl-logs', val) end end # class CommonCriteria__6 def common_criteria__6 @subclasses['common-criteria__6'] ||= CommonCriteria__6.new(parent_instance: self, create_children: @create_children) end class CommonCriteria__7 < ConfigClass def has_multiple_values? false end def _section :'common-criteria__7' end class SelfTestSchedule < ConfigClass def has_multiple_values? false end def _section :'self-test-schedule' end class Crypto < ConfigClass def has_multiple_values? false end def _section :'crypto' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class Crypto def crypto @subclasses['crypto'] ||= Crypto.new(parent_instance: self, create_children: @create_children) end class SoftwareIntegrity < ConfigClass def has_multiple_values? false end def _section :'software-integrity' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class SoftwareIntegrity def software_integrity @subclasses['software-integrity'] ||= SoftwareIntegrity.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelfTestSchedule def self_test_schedule @subclasses['self-test-schedule'] ||= SelfTestSchedule.new(parent_instance: self, create_children: @create_children) end @props={} end # class CommonCriteria__7 def common_criteria__7 @subclasses['common-criteria__7'] ||= CommonCriteria__7.new(parent_instance: self, create_children: @create_children) end class CommonCriteria__8 < ConfigClass def has_multiple_values? false end def _section :'common-criteria__8' end @props={"enable-tls-session-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable logging TLS sessions"}, "enable-ocsp-crl-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable CA (OCSP/CRL) Session Establishment Logging"}} # Enable logging TLS sessions def enable_tls_session_logging prop_get('enable-tls-session-logging') end # Enable logging TLS sessions def enable_tls_session_logging=(val) prop_set('enable-tls-session-logging', val) end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs prop_get('enable-ocsp-crl-logs') end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs=(val) prop_set('enable-ocsp-crl-logs', val) end end # class CommonCriteria__8 def common_criteria__8 @subclasses['common-criteria__8'] ||= CommonCriteria__8.new(parent_instance: self, create_children: @create_children) end class StoragePartition < XML::ConfigClass def has_multiple_values? true end def _section :'storage-partition' end class Internal < ConfigClass def has_multiple_values? false end def _section :'internal' end @props={} end # class Internal def internal @subclasses['internal'] ||= Internal.new(parent_instance: self, create_children: @create_children) end class Nfsv3 < ConfigClass def has_multiple_values? false end def _section :'nfsv3' end @props={"server"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"server IP or FQDN", "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$", "maxlen"=>"255"}}}, "log-directory"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "help-string"=>"directory to mount"}, "protocol"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"udp", "enum"=>[{"value"=>"udp"}, {"value"=>"tcp"}]}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0"}, "read-size"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"256", "max"=>"32768", "default"=>"32768"}, "write-size"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"256", "max"=>"32768", "default"=>"32768"}, "copy-on-setup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # server IP or FQDN def server prop_get('server') end # server IP or FQDN def server=(val) prop_set('server', val) end # directory to mount def log_directory prop_get('log-directory') end # directory to mount def log_directory=(val) prop_set('log-directory', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def read_size prop_get('read-size') end def read_size=(val) prop_set('read-size', val) end def write_size prop_get('write-size') end def write_size=(val) prop_set('write-size', val) end def copy_on_setup prop_get('copy-on-setup') end def copy_on_setup=(val) prop_set('copy-on-setup', val) end end # class Nfsv3 def nfsv3 @subclasses['nfsv3'] ||= Nfsv3.new(parent_instance: self, create_children: @create_children) end @props={} end # class StoragePartition def storage_partition if @create_children @subclasses['storage-partition'] ||= StoragePartition.new(parent_instance: self, create_children: @create_children) else StoragePartition.new(parent_instance: self) end end class SecureConnServer < ConfigClass def has_multiple_values? false end def _section :'secure-conn-server' end class AuthorizationList < XML::ConfigClass def has_multiple_values? true end def _section :'authorization-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Identifier < XML::ConfigClass def has_multiple_values? true end def _section :'identifier' end class Subject < ConfigClass def has_multiple_values? false end def _section :'subject' end @props={"common-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject Common Name"}} # Subject Common Name def common_name prop_get('common-name') end # Subject Common Name def common_name=(val) prop_set('common-name', val) end end # class Subject def subject @subclasses['subject'] ||= Subject.new(parent_instance: self, create_children: @create_children) end class SubjectAltName < ConfigClass def has_multiple_values? false end def _section :'subject-alt-name' end @props={"ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"Subject alternate name IP"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject alternate name DNS"}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"Email address of the contact person"}} # Subject alternate name IP def ip prop_get('ip') end # Subject alternate name IP def ip=(val) prop_set('ip', val) end # Subject alternate name DNS def hostname prop_get('hostname') end # Subject alternate name DNS def hostname=(val) prop_set('hostname', val) end # Email address of the contact person def email prop_get('email') end # Email address of the contact person def email=(val) prop_set('email', val) end end # class SubjectAltName def subject_alt_name @subclasses['subject-alt-name'] ||= SubjectAltName.new(parent_instance: self, create_children: @create_children) end @props={} end # class Identifier def identifier if @create_children @subclasses['identifier'] ||= Identifier.new(parent_instance: self, create_children: @create_children) else Identifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthorizationList def authorization_list if @create_children @subclasses['authorization-list'] ||= AuthorizationList.new(parent_instance: self, create_children: @create_children) else AuthorizationList.new(parent_instance: self) end end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["##/panorama/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=>["##/panorama/certificate-profile/entry/@name"]}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-server settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}, "disable-pre-defined-cert"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Disable connections using predefined certificates. Default setting: 'no'"}, "check-client-identity"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help"=> "Check if the Serial # in Subject common name of the client certificate is part of the user-configured managed device list. Default setting : no."}, "check-authorization-list"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help"=> "Check the authorization table for permitting incoming client connections. Default setting : 'no'", "optional"=>"yes"}, "disconnect-wait-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"44640", "help-string"=> "Disconnect previously established connections on configuration change after wait time (in minutes, Min: 0(ASAP), Default: 1 min, Max: 44640 i.e 31 days)."}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Use the secure-server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure-server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert prop_get('disable-pre-defined-cert') end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert=(val) prop_set('disable-pre-defined-cert', val) end def check_client_identity prop_get('check-client-identity') end def check_client_identity=(val) prop_set('check-client-identity', val) end def check_authorization_list prop_get('check-authorization-list') end def check_authorization_list=(val) prop_set('check-authorization-list', val) end # Disconnect previously established connections on configuration change after wait time (in minutes, Min: 0(ASAP), Default: 1 min, Max: 44640 i.e 31 days). def disconnect_wait_time prop_get('disconnect-wait-time') end # Disconnect previously established connections on configuration change after wait time (in minutes, Min: 0(ASAP), Default: 1 min, Max: 44640 i.e 31 days). def disconnect_wait_time=(val) prop_set('disconnect-wait-time', val) end end # class SecureConnServer def secure_conn_server @subclasses['secure-conn-server'] ||= SecureConnServer.new(parent_instance: self, create_children: @create_children) end class SecureConnClient < ConfigClass def has_multiple_values? false end def _section :'secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in management connections to Panorama and Log collectors", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/panorama/certificate-profile/entry/@name"]}} # Custom certificate used in management connections to Panorama and Log collectors def certificate prop_get('certificate') end # Custom certificate used in management connections to Panorama and Log collectors def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=>["#config/panorama/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/panorama/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={"enable-secure-ha-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for HA connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-wildfire-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for Wildfire connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-inter-lc-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for Inter LC connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}, "check-server-identity"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Check server certificate Subject common name(IP/FQDN) with the configured servers. Default setting: 'no'"}} # Use the secure-client certificate settings for HA connections. Default setting : 'no' def enable_secure_ha_communication prop_get('enable-secure-ha-communication') end # Use the secure-client certificate settings for HA connections. Default setting : 'no' def enable_secure_ha_communication=(val) prop_set('enable-secure-ha-communication', val) end # Use the secure-client certificate settings for Wildfire connections. Default setting : 'no' def enable_secure_wildfire_communication prop_get('enable-secure-wildfire-communication') end # Use the secure-client certificate settings for Wildfire connections. Default setting : 'no' def enable_secure_wildfire_communication=(val) prop_set('enable-secure-wildfire-communication', val) end # Use the secure-client certificate settings for Inter LC connections. Default setting : 'no' def enable_secure_inter_lc_communication prop_get('enable-secure-inter-lc-communication') end # Use the secure-client certificate settings for Inter LC connections. Default setting : 'no' def enable_secure_inter_lc_communication=(val) prop_set('enable-secure-inter-lc-communication', val) end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end # Check server certificate Subject common name(IP/FQDN) with the configured servers. Default setting: 'no' def check_server_identity prop_get('check-server-identity') end # Check server certificate Subject common name(IP/FQDN) with the configured servers. Default setting: 'no' def check_server_identity=(val) prop_set('check-server-identity', val) end end # class SecureConnClient def secure_conn_client @subclasses['secure-conn-client'] ||= SecureConnClient.new(parent_instance: self, create_children: @create_children) end class Api < ConfigClass def has_multiple_values? false end def _section :'api' end class Key < ConfigClass def has_multiple_values? false end def _section :'key' end @props={"lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"api key lifetime in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"525600"}, "enum"=>[{"value"=>"0", "help-string"=>"never"}]}}} # api key lifetime in minutes def lifetime prop_get('lifetime') end # api key lifetime in minutes def lifetime=(val) prop_set('lifetime', val) end end # class Key def key @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) end @props={} end # class Api def api @subclasses['api'] ||= Api.new(parent_instance: self, create_children: @create_children) end class AdminLockout < ConfigClass def has_multiple_values? false end def _section :'admin-lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "default"=>"0", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "default"=>"0", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class AdminLockout def admin_lockout @subclasses['admin-lockout'] ||= AdminLockout.new(parent_instance: self, create_children: @create_children) end class AdminSession < ConfigClass def has_multiple_values? false end def _section :'admin-session' end @props={"max-session-count__1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"4", "prune-on"=>"non-fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"720", "prune-on"=>"non-fips-mode", "help-string"=>"Set the maximum session time (60-1499 minutes)", "regex"=>"^(([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}, "max-session-count__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=>"Set the maximum session time (0, 60-1499 minutes)", "regex"=>"^((0)|([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}} # Set the maximum number of sessions administrators are allowed def max_session_count__1 prop_get('max-session-count__1') end # Set the maximum number of sessions administrators are allowed def max_session_count__1=(val) prop_set('max-session-count__1', val) end # Set the maximum session time (60-1499 minutes) def max_session_time__2 prop_get('max-session-time__2') end # Set the maximum session time (60-1499 minutes) def max_session_time__2=(val) prop_set('max-session-time__2', val) end # Set the maximum number of sessions administrators are allowed def max_session_count__3 prop_get('max-session-count__3') end # Set the maximum number of sessions administrators are allowed def max_session_count__3=(val) prop_set('max-session-count__3', val) end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4 prop_get('max-session-time__4') end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4=(val) prop_set('max-session-time__4', val) end end # class AdminSession def admin_session @subclasses['admin-session'] ||= AdminSession.new(parent_instance: self, create_children: @create_children) end class BrowseActivityReportSetting < ConfigClass def has_multiple_values? false end def _section :'browse-activity-report-setting' end @props={"average-browse-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"300", "default"=>"60", "help-string"=>"Average time in seconds for a browse session"}, "page-load-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"20", "help-string"=>"Average time in seconds to load a URL page"}} # Average time in seconds for a browse session def average_browse_time prop_get('average-browse-time') end # Average time in seconds for a browse session def average_browse_time=(val) prop_set('average-browse-time', val) end # Average time in seconds to load a URL page def page_load_threshold prop_get('page-load-threshold') end # Average time in seconds to load a URL page def page_load_threshold=(val) prop_set('page-load-threshold', val) end end # class BrowseActivityReportSetting def browse_activity_report_setting @subclasses['browse-activity-report-setting'] ||= BrowseActivityReportSetting.new(parent_instance: self, create_children: @create_children) end class LogForwardingFromDevice < ConfigClass def has_multiple_values? false end def _section :'log-forwarding-from-device' end @props={"buffered"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn log buffering on or off"}} # Turn log buffering on or off def buffered prop_get('buffered') end # Turn log buffering on or off def buffered=(val) prop_set('buffered', val) end end # class LogForwardingFromDevice def log_forwarding_from_device @subclasses['log-forwarding-from-device'] ||= LogForwardingFromDevice.new(parent_instance: self, create_children: @create_children) end @props={"large-core"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"enable core files to logdb", "default"=>"no", "type"=>"enum", "enum"=> [{"value"=>"yes", "help-string"=> "2GB is going to be taken from logdb after commit succeeds, Logs in logdb may be removed automatically"}, {"value"=>"no", "help-string"=> "Space reserved for large-core will be returned to logdb after commit succeeds, also any exiting core files will be deleted on disabling large-core feature."}]}, "run-predefined-reports-on-panorama-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Run predefined reports on Panorama Data"}, "idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"default administrative session idle timeout in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"1440", "help-string"=>"minutes"}, "enum"=>[{"value"=>"0", "help-string"=>"never timeout"}]}}, "appusage-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"60", "max"=>"365", "help-string"=>"application usage data storage time in days"}, "hostname-type-in-syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"FQDN", "help-string"=>"Choose type to send in hostname field in syslog header", "enum"=> [{"value"=>"none", "help-string"=>"Do not send hostname in syslog header"}, {"value"=>"FQDN", "help-string"=>"Send FQDN field in header"}, {"value"=>"hostname", "help-string"=> "Send hostname in header if available otherwise send '-' "}, {"value"=>"ipv4-address", "help-string"=> "Send IPv4 address in header if available otherwise send '-'"}, {"value"=>"ipv6-address", "help-string"=> "Send IPv6 address in header if available otherwise send '-'"}]}, "report-run-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"([0][2-9]|[1][0-9]|[2][0-3]):00", "minlen"=>"5", "maxlen"=>"5", "default"=>"02:00", "help-string"=> "Time of day to run the scheduled reports hh:mm (e.g. 23:00)"}, "report-expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"Expiration-period for reports (in days)"}, "auto-acquire-commit-lock"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Automatically add a commit lock when modifying configuration"}, "rule-hit-count"=> {"node-type"=>"element", "default"=>"yes", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable/Disable Policy rule hit-count feature"}, "rule-require-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require Tag on policies"}, "rule-require-description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require description on policies"}, "rule-fail-commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Fail commit if policies have no tags/description"}, "rule-require-audit-comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require audit comment on policies"}, "rule-audit-comment-regex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"Audit Comment Regular Expression"}, "appusage-policy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/Disable Policy Application usage feature"}, "canonicalize-block-allow-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable/Disable canonicalization before matching url to block/allow list"}, "ancestor-objects-take-precedence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Objects defined in ancestors will take higher precedence"}, "enable-reporting-on-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable reporting and filtering on groups"}, "share-unused-objects-with-devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "During device-group commit send address and service objects unused in rules to the devices"}, "max-rows-in-csv-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"65535", "help-string"=>"maximum number of rows in exported csv files"}, "max-rows-in-pdf-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"5000", "help-string"=>"maximum number of rows in user activity report"}, "max-backup-versions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"100", "help-string"=> "maximum number of versions of config to back up per device"}, "max-audit-versions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"100", "help-string"=>"maximum number of audited versions of config to preserve"}, "panorama-tcp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"240", "help-string"=>"Receive timeout for TCP connection to devices"}, "panorama-tcp-send-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"240", "help-string"=>"Send timeout for TCP connection to devices"}, "panorama-ssl-send-retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "help-string"=>"Retry count for SSL sends to devices"}, "only-active-primary-logs-to-local-disk"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on-sdb"=>"cfg.cms.mode=panorama", "help-string"=> "Only active primary Panorama will receive logs from device and store in local disk"}, "get-only-new-logs-on-convert-to-primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on-sdb"=>"cfg.cms.mode=panorama", "help-string"=> "When Panorama becomes the primary, get only new logs from device"}, "threat-vault-access"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn threat-vault access on or off"}, "support-utf8-for-log-output"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Support output log in UTF-8"}} # enable core files to logdb def large_core prop_get('large-core') end # enable core files to logdb def large_core=(val) prop_set('large-core', val) end # Run predefined reports on Panorama Data def run_predefined_reports_on_panorama_data prop_get('run-predefined-reports-on-panorama-data') end # Run predefined reports on Panorama Data def run_predefined_reports_on_panorama_data=(val) prop_set('run-predefined-reports-on-panorama-data', val) end # default administrative session idle timeout in minutes def idle_timeout prop_get('idle-timeout') end # default administrative session idle timeout in minutes def idle_timeout=(val) prop_set('idle-timeout', val) end # application usage data storage time in days def appusage_lifetime prop_get('appusage-lifetime') end # application usage data storage time in days def appusage_lifetime=(val) prop_set('appusage-lifetime', val) end # Choose type to send in hostname field in syslog header def hostname_type_in_syslog prop_get('hostname-type-in-syslog') end # Choose type to send in hostname field in syslog header def hostname_type_in_syslog=(val) prop_set('hostname-type-in-syslog', val) end # Time of day to run the scheduled reports hh:mm (e.g. 23:00) def report_run_time prop_get('report-run-time') end # Time of day to run the scheduled reports hh:mm (e.g. 23:00) def report_run_time=(val) prop_set('report-run-time', val) end # Expiration-period for reports (in days) def report_expiration_period prop_get('report-expiration-period') end # Expiration-period for reports (in days) def report_expiration_period=(val) prop_set('report-expiration-period', val) end # Automatically add a commit lock when modifying configuration def auto_acquire_commit_lock prop_get('auto-acquire-commit-lock') end # Automatically add a commit lock when modifying configuration def auto_acquire_commit_lock=(val) prop_set('auto-acquire-commit-lock', val) end # Enable/Disable Policy rule hit-count feature def rule_hit_count prop_get('rule-hit-count') end # Enable/Disable Policy rule hit-count feature def rule_hit_count=(val) prop_set('rule-hit-count', val) end # Require Tag on policies def rule_require_tag prop_get('rule-require-tag') end # Require Tag on policies def rule_require_tag=(val) prop_set('rule-require-tag', val) end # Require description on policies def rule_require_description prop_get('rule-require-description') end # Require description on policies def rule_require_description=(val) prop_set('rule-require-description', val) end # Fail commit if policies have no tags/description def rule_fail_commit prop_get('rule-fail-commit') end # Fail commit if policies have no tags/description def rule_fail_commit=(val) prop_set('rule-fail-commit', val) end # Require audit comment on policies def rule_require_audit_comment prop_get('rule-require-audit-comment') end # Require audit comment on policies def rule_require_audit_comment=(val) prop_set('rule-require-audit-comment', val) end # Audit Comment Regular Expression def rule_audit_comment_regex prop_get('rule-audit-comment-regex') end # Audit Comment Regular Expression def rule_audit_comment_regex=(val) prop_set('rule-audit-comment-regex', val) end # Enable/Disable Policy Application usage feature def appusage_policy prop_get('appusage-policy') end # Enable/Disable Policy Application usage feature def appusage_policy=(val) prop_set('appusage-policy', val) end # Enable/Disable canonicalization before matching url to block/allow list def canonicalize_block_allow_list prop_get('canonicalize-block-allow-list') end # Enable/Disable canonicalization before matching url to block/allow list def canonicalize_block_allow_list=(val) prop_set('canonicalize-block-allow-list', val) end # Objects defined in ancestors will take higher precedence def ancestor_objects_take_precedence prop_get('ancestor-objects-take-precedence') end # Objects defined in ancestors will take higher precedence def ancestor_objects_take_precedence=(val) prop_set('ancestor-objects-take-precedence', val) end # Enable reporting and filtering on groups def enable_reporting_on_groups prop_get('enable-reporting-on-groups') end # Enable reporting and filtering on groups def enable_reporting_on_groups=(val) prop_set('enable-reporting-on-groups', val) end # During device-group commit send address and service objects unused in rules to the devices def share_unused_objects_with_devices prop_get('share-unused-objects-with-devices') end # During device-group commit send address and service objects unused in rules to the devices def share_unused_objects_with_devices=(val) prop_set('share-unused-objects-with-devices', val) end # maximum number of rows in exported csv files def max_rows_in_csv_export prop_get('max-rows-in-csv-export') end # maximum number of rows in exported csv files def max_rows_in_csv_export=(val) prop_set('max-rows-in-csv-export', val) end # maximum number of rows in user activity report def max_rows_in_pdf_report prop_get('max-rows-in-pdf-report') end # maximum number of rows in user activity report def max_rows_in_pdf_report=(val) prop_set('max-rows-in-pdf-report', val) end # maximum number of versions of config to back up per device def max_backup_versions prop_get('max-backup-versions') end # maximum number of versions of config to back up per device def max_backup_versions=(val) prop_set('max-backup-versions', val) end # maximum number of audited versions of config to preserve def max_audit_versions prop_get('max-audit-versions') end # maximum number of audited versions of config to preserve def max_audit_versions=(val) prop_set('max-audit-versions', val) end # Receive timeout for TCP connection to devices def panorama_tcp_receive_timeout prop_get('panorama-tcp-receive-timeout') end # Receive timeout for TCP connection to devices def panorama_tcp_receive_timeout=(val) prop_set('panorama-tcp-receive-timeout', val) end # Send timeout for TCP connection to devices def panorama_tcp_send_timeout prop_get('panorama-tcp-send-timeout') end # Send timeout for TCP connection to devices def panorama_tcp_send_timeout=(val) prop_set('panorama-tcp-send-timeout', val) end # Retry count for SSL sends to devices def panorama_ssl_send_retries prop_get('panorama-ssl-send-retries') end # Retry count for SSL sends to devices def panorama_ssl_send_retries=(val) prop_set('panorama-ssl-send-retries', val) end # Only active primary Panorama will receive logs from device and store in local disk def only_active_primary_logs_to_local_disk prop_get('only-active-primary-logs-to-local-disk') end # Only active primary Panorama will receive logs from device and store in local disk def only_active_primary_logs_to_local_disk=(val) prop_set('only-active-primary-logs-to-local-disk', val) end # When Panorama becomes the primary, get only new logs from device def get_only_new_logs_on_convert_to_primary prop_get('get-only-new-logs-on-convert-to-primary') end # When Panorama becomes the primary, get only new logs from device def get_only_new_logs_on_convert_to_primary=(val) prop_set('get-only-new-logs-on-convert-to-primary', val) end # Turn threat-vault access on or off def threat_vault_access prop_get('threat-vault-access') end # Turn threat-vault access on or off def threat_vault_access=(val) prop_set('threat-vault-access', val) end # Support output log in UTF-8 def support_utf8_for_log_output prop_get('support-utf8-for-log-output') end # Support output log in UTF-8 def support_utf8_for_log_output=(val) prop_set('support-utf8-for-log-output', val) end end # class Management def management @subclasses['management'] ||= Management.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class PrivateCloudSecureConnClient < ConfigClass def has_multiple_values? false end def _section :'private-cloud-secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in connection to private wildfire cloud", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/panorama/certificate-profile/entry/@name"]}} # Custom certificate used in connection to private wildfire cloud def certificate prop_get('certificate') end # Custom certificate used in connection to private wildfire cloud def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=>["#config/panorama/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/panorama/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={} end # class PrivateCloudSecureConnClient def private_cloud_secure_conn_client @subclasses['private-cloud-secure-conn-client'] ||= PrivateCloudSecureConnClient.new(parent_instance: self, create_children: @create_children) end @props={"private-cloud-use-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Use global proxy, when configured, to connect to private cloud server."}, "cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=> "IP address or hostname for the WildFire cloud. Default is wildfire-public-cloud"}} # Use global proxy, when configured, to connect to private cloud server. def private_cloud_use_proxy prop_get('private-cloud-use-proxy') end # Use global proxy, when configured, to connect to private cloud server. def private_cloud_use_proxy=(val) prop_set('private-cloud-use-proxy', val) end # IP address or hostname for the WildFire cloud. Default is wildfire-public-cloud def cloud_server prop_get('cloud-server') end # IP address or hostname for the WildFire cloud. Default is wildfire-public-cloud def cloud_server=(val) prop_set('cloud-server', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Autofocus < ConfigClass def has_multiple_values? false end def _section :'autofocus' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable AutoFocus service"}, "autofocus-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1024", "default"=>"https://autofocus.paloaltonetworks.com:10443", "help-string"=>"URL for AutoFocus server"}, "query-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"15", "max"=>"3600", "default"=>"15", "help-string"=>"Query time out in seconds"}} # Enable AutoFocus service def enabled prop_get('enabled') end # Enable AutoFocus service def enabled=(val) prop_set('enabled', val) end # URL for AutoFocus server def autofocus_url prop_get('autofocus-url') end # URL for AutoFocus server def autofocus_url=(val) prop_set('autofocus-url', val) end # Query time out in seconds def query_timeout prop_get('query-timeout') end # Query time out in seconds def query_timeout=(val) prop_set('query-timeout', val) end end # class Autofocus def autofocus @subclasses['autofocus'] ||= Autofocus.new(parent_instance: self, create_children: @create_children) end class CustomLogo < ConfigClass def has_multiple_values? false end def _section :'custom-logo' end class LoginScreen < ConfigClass def has_multiple_values? false end def _section :'login-screen' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom login-screen page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom login-screen page(base64 encoded). def content prop_get('content') end # Upload custom login-screen page(base64 encoded). def content=(val) prop_set('content', val) end end # class LoginScreen def login_screen @subclasses['login-screen'] ||= LoginScreen.new(parent_instance: self, create_children: @create_children) end class MainUi < ConfigClass def has_multiple_values? false end def _section :'main-ui' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom main-ui page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom main-ui page(base64 encoded). def content prop_get('content') end # Upload custom main-ui page(base64 encoded). def content=(val) prop_set('content', val) end end # class MainUi def main_ui @subclasses['main-ui'] ||= MainUi.new(parent_instance: self, create_children: @create_children) end class PdfReportHeader < ConfigClass def has_multiple_values? false end def _section :'pdf-report-header' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom pdf-report-header page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom pdf-report-header page(base64 encoded). def content prop_get('content') end # Upload custom pdf-report-header page(base64 encoded). def content=(val) prop_set('content', val) end end # class PdfReportHeader def pdf_report_header @subclasses['pdf-report-header'] ||= PdfReportHeader.new(parent_instance: self, create_children: @create_children) end class PdfReportFooter < ConfigClass def has_multiple_values? false end def _section :'pdf-report-footer' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom pdf-report-footer page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom pdf-report-footer page(base64 encoded). def content prop_get('content') end # Upload custom pdf-report-footer page(base64 encoded). def content=(val) prop_set('content', val) end end # class PdfReportFooter def pdf_report_footer @subclasses['pdf-report-footer'] ||= PdfReportFooter.new(parent_instance: self, create_children: @create_children) end @props={"hide-panorama-header-background"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def hide_panorama_header_background prop_get('hide-panorama-header-background') end def hide_panorama_header_background=(val) prop_set('hide-panorama-header-background', val) end end # class CustomLogo def custom_logo @subclasses['custom-logo'] ||= CustomLogo.new(parent_instance: self, create_children: @create_children) end class Iot < ConfigClass def has_multiple_values? false end def _section :'iot' end class Edge < ConfigClass def has_multiple_values? false end def _section :'edge' end @props={"disable-device-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the edge cloud service", "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name"}}}} def disable_device_cert prop_get('disable-device-cert') end def disable_device_cert=(val) prop_set('disable-device-cert', val) end # IP address or hostname for the edge cloud service def address prop_get('address') end # IP address or hostname for the edge cloud service def address=(val) prop_set('address', val) end end # class Edge def edge @subclasses['edge'] ||= Edge.new(parent_instance: self, create_children: @create_children) end @props={} end # class Iot def iot @subclasses['iot'] ||= Iot.new(parent_instance: self, create_children: @create_children) end @props={"gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "hidden"=>"yes", "type"=>"bool", "default"=>"no"}} def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end class Peer < ConfigClass def has_multiple_values? false end def _section :'peer' end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=> {"node-type"=>"element", "optional"=>"yes", "ipv4-only"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "help-string"=>"HA Peer IP address"}, "serial"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "regex"=>"^[0-9A-Z]+$", "help-string"=>"HA Peer serial number"}, "monitor-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"3000", "help-string"=> "hold time in milliseconds to allow HA peer flapping, default 3000"}} # HA Peer IP address def ip_address prop_get('ip-address') end # HA Peer IP address def ip_address=(val) prop_set('ip-address', val) end # HA Peer serial number def serial prop_get('serial') end # HA Peer serial number def serial=(val) prop_set('serial', val) end # hold time in milliseconds to allow HA peer flapping, default 3000 def monitor_hold_time prop_get('monitor-hold-time') end # hold time in milliseconds to allow HA peer flapping, default 3000 def monitor_hold_time=(val) prop_set('monitor-hold-time', val) end end # class Peer def peer @subclasses['peer'] ||= Peer.new(parent_instance: self, create_children: @create_children) end class ElectionOption < ConfigClass def has_multiple_values? false end def _section :'election-option' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end class Recommended < ConfigClass def has_multiple_values? false end def _section :'recommended' end @props={} end # class Recommended def recommended @subclasses['recommended'] ||= Recommended.new(parent_instance: self, create_children: @create_children) end class Aggressive < ConfigClass def has_multiple_values? false end def _section :'aggressive' end @props={} end # class Aggressive def aggressive @subclasses['aggressive'] ||= Aggressive.new(parent_instance: self, create_children: @create_children) end class Advanced < ConfigClass def has_multiple_values? false end def _section :'advanced' end @props={"promotion-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to state change from Passive to Active, default 2000"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"8000", "max"=>"60000", "default"=>"8000", "help-string"=> "Interval in milliseconds to send Hello messages, default 8000"}, "heartbeat-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to send Heartbeat pings, default 2000"}, "preemption-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in Passive before preempting Active device, default 1"}, "monitor-fail-hold-up-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"0", "help-string"=> "Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0"}, "additional-master-hold-up-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"7000", "help-string"=> "Interval in milliseconds to wait before honoring a path or link monitor failure on the Active device, default 7000"}} # Interval in milliseconds to state change from Passive to Active, default 2000 def promotion_hold_time prop_get('promotion-hold-time') end # Interval in milliseconds to state change from Passive to Active, default 2000 def promotion_hold_time=(val) prop_set('promotion-hold-time', val) end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval prop_get('hello-interval') end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval=(val) prop_set('hello-interval', val) end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval prop_get('heartbeat-interval') end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval=(val) prop_set('heartbeat-interval', val) end # Interval in minutes to stay in Passive before preempting Active device, default 1 def preemption_hold_time prop_get('preemption-hold-time') end # Interval in minutes to stay in Passive before preempting Active device, default 1 def preemption_hold_time=(val) prop_set('preemption-hold-time', val) end # Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0 def monitor_fail_hold_up_time prop_get('monitor-fail-hold-up-time') end # Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0 def monitor_fail_hold_up_time=(val) prop_set('monitor-fail-hold-up-time', val) end # Interval in milliseconds to wait before honoring a path or link monitor failure on the Active device, default 7000 def additional_master_hold_up_time prop_get('additional-master-hold-up-time') end # Interval in milliseconds to wait before honoring a path or link monitor failure on the Active device, default 7000 def additional_master_hold_up_time=(val) prop_set('additional-master-hold-up-time', val) end end # class Advanced def advanced @subclasses['advanced'] ||= Advanced.new(parent_instance: self, create_children: @create_children) end @props={} end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end @props={"priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Set priority of the local device", "enum"=> [{"value"=>"primary", "help-string"=>"Primary HA device"}, {"value"=>"secondary", "help-string"=>"Secondary HA device"}]}, "preemptive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Configure on both HA peers to allow preemption by Passive device based on priority, default yes"}} # Set priority of the local device def priority prop_get('priority') end # Set priority of the local device def priority=(val) prop_set('priority', val) end # Configure on both HA peers to allow preemption by Passive device based on priority, default yes def preemptive prop_get('preemptive') end # Configure on both HA peers to allow preemption by Passive device based on priority, default yes def preemptive=(val) prop_set('preemptive', val) end end # class ElectionOption def election_option @subclasses['election-option'] ||= ElectionOption.new(parent_instance: self, create_children: @create_children) end class PathMonitoring < ConfigClass def has_multiple_values? false end def _section :'path-monitoring' end class PathGroup < XML::ConfigClass def has_multiple_values? true end def _section :'path-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "ipv4-only"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "help-string"=>"IP address"}} # IP address def member prop_get('member') end # IP address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"5000", "help-string"=> "Interval in milliseconds to ping the destination paths, default 5000"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"3", "help-string"=> "Number of failures to allow before determining a destination path is down, default 3"}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end # Interval in milliseconds to ping the destination paths, default 5000 def ping_interval prop_get('ping-interval') end # Interval in milliseconds to ping the destination paths, default 5000 def ping_interval=(val) prop_set('ping-interval', val) end # Number of failures to allow before determining a destination path is down, default 3 def ping_count prop_get('ping-count') end # Number of failures to allow before determining a destination path is down, default 3 def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PathGroup def path_group if @create_children @subclasses['path-group'] ||= PathGroup.new(parent_instance: self, create_children: @create_children) else PathGroup.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any path group)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any path group) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any path group) def failure_condition=(val) prop_set('failure-condition', val) end end # class PathMonitoring def path_monitoring @subclasses['path-monitoring'] ||= PathMonitoring.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}} # Enable high-availability def enabled prop_get('enabled') end # Enable high-availability def enabled=(val) prop_set('enabled', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={} end # class Deviceconfig def deviceconfig @subclasses['deviceconfig'] ||= Deviceconfig.new(parent_instance: self, create_children: @create_children) end class DeviceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'device-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ReferenceTemplates < XML::ConfigClass def has_multiple_values? true end def _section :'reference-templates' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"64", "help-string"=>"template or stack", "autocomplete"=>"yes", "memberof"=>[]}} # template or stack def member prop_get('member') end # template or stack def member=(val) prop_set('member', val) end end # class ReferenceTemplates def reference_templates if @create_children @subclasses['reference-templates'] ||= ReferenceTemplates.new(parent_instance: self, create_children: @create_children) else ReferenceTemplates.new(parent_instance: self) end end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "regex"=>"^[0-9A-Z]+$", "help-string"=>"device name", "autocomplete"=>"yes", "memberof"=>[]}} # device name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class MasterDevice < ConfigClass def has_multiple_values? false end def _section :'master-device' end @props={"device"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"64", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/devices/entry/@name"]}, "vsys"=>{"node-type"=>"element", "type"=>"string", "optional"=>"yes"}, "sync-group"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes"}} def device prop_get('device') end def device=(val) prop_set('device', val) end def vsys prop_get('vsys') end def vsys=(val) prop_set('vsys', val) end def sync_group prop_get('sync-group') end def sync_group=(val) prop_set('sync-group', val) end end # class MasterDevice def master_device @subclasses['master-device'] ||= MasterDevice.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class Profiles < XML::ConfigClass def has_multiple_values? true end def _section :'profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/log-settings/snmptrap/entry[version]/@name", "#mytemplates/#dg-hier/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/log-settings/email/entry[server]/@name", "#mytemplates/#dg-hier/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/log-settings/syslog/entry[server]/@name", "#mytemplates/#dg-hier/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#mytemplates/#dg-hier/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/log-settings/http/entry[tag-registration='yes']/@name", "#mytemplates/#dg-hier/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "action-desc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1023"}, "log-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"traffic", "help-string"=>"Pick log type", "enum"=> [{"value"=>"traffic"}, {"value"=>"threat"}, {"value"=>"wildfire"}, {"value"=>"url"}, {"value"=>"data"}, {"value"=>"gtp"}, {"value"=>"sctp"}, {"value"=>"tunnel"}, {"value"=>"auth"}, {"value"=>"decryption"}]}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/profiles/entry/match-list/entry/filter", "#dg-hier/log-settings/profiles/entry/match-list/entry/filter", "#dg-hier/log-settings/profiles/entry/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action_desc prop_get('action-desc') end def action_desc=(val) prop_set('action-desc', val) end # Pick log type def log_type prop_get('log-type') end # Pick log type def log_type=(val) prop_set('log-type', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1023"}, "enhanced-application-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enabling enhanced-application-logging"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # Enabling enhanced-application-logging def enhanced_application_logging prop_get('enhanced-application-logging') end # Enabling enhanced-application-logging def enhanced_application_logging=(val) prop_set('enhanced-application-logging', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Profiles def profiles if @create_children @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) else Profiles.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of SMTP gateway to use"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "ip-netmask"=>{"node-type"=>"element", "type"=>"ipspec"}, "ip-range"=>{"node-type"=>"element", "type"=>"iprangespec"}, "ip-wildcard"=>{"node-type"=>"element", "type"=>"ipdiscontmask"}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^[a-zA-Z0-9_]([a-zA-Z0-9._-])+[a-zA-Z0-9]$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def ip_wildcard prop_get('ip-wildcard') end def ip_wildcard=(val) prop_set('ip-wildcard', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class AddressGroup < XML::ConfigClass def has_multiple_values? true end def _section :'address-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Static < XML::ConfigClass def has_multiple_values? true end def _section :'static' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Static def static if @create_children @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) else Static.new(parent_instance: self) end end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"filter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2047", "help-string"=>"tag-based filter"}} # tag-based filter def filter prop_get('filter') end # tag-based filter def filter=(val) prop_set('filter', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressGroup def address_group if @create_children @subclasses['address-group'] ||= AddressGroup.new(parent_instance: self, create_children: @create_children) else AddressGroup.new(parent_instance: self) end end class DynamicUserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dynamic-user-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2047", "help-string"=>"tag-based filter"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # tag-based filter def filter prop_get('filter') end # tag-based filter def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DynamicUserGroup def dynamic_user_group if @create_children @subclasses['dynamic-user-group'] ||= DynamicUserGroup.new(parent_instance: self, create_children: @create_children) else DynamicUserGroup.new(parent_instance: self) end end class DeviceObject < XML::ConfigClass def has_multiple_values? true end def _section :'device-object' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='category']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='category']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Profile < XML::ConfigClass def has_multiple_values? true end def _section :'profile' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='profile']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='profile']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Profile def profile if @create_children @subclasses['profile'] ||= Profile.new(parent_instance: self, create_children: @create_children) else Profile.new(parent_instance: self) end end class Osfamily < XML::ConfigClass def has_multiple_values? true end def _section :'osfamily' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='osfamily']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='osfamily']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Osfamily def osfamily if @create_children @subclasses['osfamily'] ||= Osfamily.new(parent_instance: self, create_children: @create_children) else Osfamily.new(parent_instance: self) end end class Os < XML::ConfigClass def has_multiple_values? true end def _section :'os' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='os']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='os']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Os def os if @create_children @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) else Os.new(parent_instance: self) end end class Model < XML::ConfigClass def has_multiple_values? true end def _section :'model' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='model']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='model']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Model def model if @create_children @subclasses['model'] ||= Model.new(parent_instance: self, create_children: @create_children) else Model.new(parent_instance: self) end end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/iot-definitions/attribute[@name='vendor']/entry/@name|#config/shared/content-preview/iot-definitions/attribute[@name='vendor']/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DeviceObject def device_object if @create_children @subclasses['device-object'] ||= DeviceObject.new(parent_instance: self, create_children: @create_children) else DeviceObject.new(parent_instance: self) end end class Threats < ConfigClass def has_multiple_values? false end def _section :'threats' end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AffectedHost < ConfigClass def has_multiple_values? false end def _section :'affected-host' end @props={"client"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "server"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def client prop_get('client') end def client=(val) prop_set('client', val) end def server prop_get('server') end def server=(val) prop_set('server', val) end end # class AffectedHost def affected_host @subclasses['affected-host'] ||= AffectedHost.new(parent_instance: self, create_children: @create_children) end class DefaultAction < XML::ConfigClass def has_multiple_values? true end def _section :'default-action' end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultAction def default_action if @create_children @subclasses['default-action'] ||= DefaultAction.new(parent_instance: self, create_children: @create_children) else DefaultAction.new(parent_instance: self) end end class Cve < XML::ConfigClass def has_multiple_values? true end def _section :'cve' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"CVE #, CVE-1999-0001 etc"}} # CVE #, CVE-1999-0001 etc def member prop_get('member') end # CVE #, CVE-1999-0001 etc def member=(val) prop_set('member', val) end end # class Cve def cve if @create_children @subclasses['cve'] ||= Cve.new(parent_instance: self, create_children: @create_children) else Cve.new(parent_instance: self) end end class Bugtraq < XML::ConfigClass def has_multiple_values? true end def _section :'bugtraq' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"bugtraq id"}} # bugtraq id def member prop_get('member') end # bugtraq id def member=(val) prop_set('member', val) end end # class Bugtraq def bugtraq if @create_children @subclasses['bugtraq'] ||= Bugtraq.new(parent_instance: self, create_children: @create_children) else Bugtraq.new(parent_instance: self) end end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"Vendor's refer id, for example, MS03-026"}} # Vendor's refer id, for example, MS03-026 def member prop_get('member') end # Vendor's refer id, for example, MS03-026 def member=(val) prop_set('member', val) end end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end class Reference < XML::ConfigClass def has_multiple_values? true end def _section :'reference' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"256", "help-string"=>"URL"}} # URL def member prop_get('member') end # URL def member=(val) prop_set('member', val) end end # class Reference def reference if @create_children @subclasses['reference'] ||= Reference.new(parent_instance: self, create_children: @create_children) else Reference.new(parent_instance: self) end end class Signature < XML::ConfigClass def has_multiple_values? true end def _section :'signature' end class Standard < XML::ConfigClass def has_multiple_values? true end def _section :'standard' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Operator < XML::ConfigClass def has_multiple_values? true end def _section :'operator' end class LessThan < ConfigClass def has_multiple_values? false end def _section :'less-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class LessThan def less_than @subclasses['less-than'] ||= LessThan.new(parent_instance: self, create_children: @create_children) end class EqualTo < ConfigClass def has_multiple_values? false end def _section :'equal-to' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes", "default"=>"no"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end end # class EqualTo def equal_to @subclasses['equal-to'] ||= EqualTo.new(parent_instance: self, create_children: @create_children) end class GreaterThan < ConfigClass def has_multiple_values? false end def _section :'greater-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class GreaterThan def greater_than @subclasses['greater-than'] ||= GreaterThan.new(parent_instance: self, create_children: @create_children) end class PatternMatch < ConfigClass def has_multiple_values? false end def _section :'pattern-match' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/pattern/entry/@name"]}, "pattern"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def pattern prop_get('pattern') end def pattern=(val) prop_set('pattern', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end end # class PatternMatch def pattern_match @subclasses['pattern-match'] ||= PatternMatch.new(parent_instance: self, create_children: @create_children) end @props={} end # class Operator def operator if @create_children @subclasses['operator'] ||= Operator.new(parent_instance: self, create_children: @create_children) else Operator.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "scope"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"protocol-data-unit", "enum"=> [{"value"=>"protocol-data-unit", "help-string"=>"transaction"}, {"value"=>"session"}]}, "order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def scope prop_get('scope') end def scope=(val) prop_set('scope', val) end def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Standard def standard if @create_children @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) else Standard.new(parent_instance: self) end end class Combination < ConfigClass def has_multiple_values? false end def _section :'combination' end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"source-and-destination", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id", "autocomplete"=>"yes", "memberof"=> ["##/predefined/threats/vulnerability/entry[not (time-attribute)]/@name", "##/predefined/threats/phone-home/entry[not (time-attribute)]/@name", "#config/shared/threats/vulnerability/entry[(signature/standard)]/@name", "#config/shared/threats/spyware/entry[(signature/standard)]/@name", "#dg-hier/threats/vulnerability/entry[(signature/standard)]/@name", "#dg-hier/threats/spyware/entry[(signature/standard)]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # threat id def threat_id prop_get('threat-id') end # threat id def threat_id=(val) prop_set('threat-id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Combination def combination @subclasses['combination'] ||= Combination.new(parent_instance: self, create_children: @create_children) end @props={} end # class Signature def signature if @create_children @subclasses['signature'] ||= Signature.new(parent_instance: self, create_children: @create_children) else Signature.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"41000", "max"=>"6900000", "help-string"=>"threat id range <41000-45000> and <6800001-6900000>"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "threatname"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "severity"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}, "direction"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/direction/entry/@name"]}} # threat id range <41000-45000> and <6800001-6900000> def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # alphanumeric string [ 0-9a-zA-Z._-] def threatname prop_get('threatname') end # alphanumeric string [ 0-9a-zA-Z._-] def threatname=(val) prop_set('threatname', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DefaultAction < XML::ConfigClass def has_multiple_values? true end def _section :'default-action' end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultAction def default_action if @create_children @subclasses['default-action'] ||= DefaultAction.new(parent_instance: self, create_children: @create_children) else DefaultAction.new(parent_instance: self) end end class Cve < XML::ConfigClass def has_multiple_values? true end def _section :'cve' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"CVE #, CVE-1999-0001 etc"}} # CVE #, CVE-1999-0001 etc def member prop_get('member') end # CVE #, CVE-1999-0001 etc def member=(val) prop_set('member', val) end end # class Cve def cve if @create_children @subclasses['cve'] ||= Cve.new(parent_instance: self, create_children: @create_children) else Cve.new(parent_instance: self) end end class Bugtraq < XML::ConfigClass def has_multiple_values? true end def _section :'bugtraq' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"bugtraq id"}} # bugtraq id def member prop_get('member') end # bugtraq id def member=(val) prop_set('member', val) end end # class Bugtraq def bugtraq if @create_children @subclasses['bugtraq'] ||= Bugtraq.new(parent_instance: self, create_children: @create_children) else Bugtraq.new(parent_instance: self) end end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"Vendor's refer id, for example, MS03-026"}} # Vendor's refer id, for example, MS03-026 def member prop_get('member') end # Vendor's refer id, for example, MS03-026 def member=(val) prop_set('member', val) end end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end class Reference < XML::ConfigClass def has_multiple_values? true end def _section :'reference' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"URL"}} # URL def member prop_get('member') end # URL def member=(val) prop_set('member', val) end end # class Reference def reference if @create_children @subclasses['reference'] ||= Reference.new(parent_instance: self, create_children: @create_children) else Reference.new(parent_instance: self) end end class Signature < XML::ConfigClass def has_multiple_values? true end def _section :'signature' end class Standard < XML::ConfigClass def has_multiple_values? true end def _section :'standard' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Operator < XML::ConfigClass def has_multiple_values? true end def _section :'operator' end class LessThan < ConfigClass def has_multiple_values? false end def _section :'less-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}} def value prop_get('value') end def value=(val) prop_set('value', val) end def context prop_get('context') end def context=(val) prop_set('context', val) end end # class LessThan def less_than @subclasses['less-than'] ||= LessThan.new(parent_instance: self, create_children: @create_children) end class EqualTo < ConfigClass def has_multiple_values? false end def _section :'equal-to' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes", "default"=>"no"}, "context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}} def value prop_get('value') end def value=(val) prop_set('value', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end def context prop_get('context') end def context=(val) prop_set('context', val) end end # class EqualTo def equal_to @subclasses['equal-to'] ||= EqualTo.new(parent_instance: self, create_children: @create_children) end class GreaterThan < ConfigClass def has_multiple_values? false end def _section :'greater-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}, "context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/value/entry/@name"]}} def value prop_get('value') end def value=(val) prop_set('value', val) end def context prop_get('context') end def context=(val) prop_set('context', val) end end # class GreaterThan def greater_than @subclasses['greater-than'] ||= GreaterThan.new(parent_instance: self, create_children: @create_children) end class PatternMatch < ConfigClass def has_multiple_values? false end def _section :'pattern-match' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["##/predefined/decoder-fields/fields/pattern/entry/@name"]}, "pattern"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def pattern prop_get('pattern') end def pattern=(val) prop_set('pattern', val) end def negate prop_get('negate') end def negate=(val) prop_set('negate', val) end end # class PatternMatch def pattern_match @subclasses['pattern-match'] ||= PatternMatch.new(parent_instance: self, create_children: @create_children) end @props={} end # class Operator def operator if @create_children @subclasses['operator'] ||= Operator.new(parent_instance: self, create_children: @create_children) else Operator.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "scope"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"protocol-data-unit", "enum"=> [{"value"=>"protocol-data-unit", "help-string"=>"transaction"}, {"value"=>"session"}]}, "order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def scope prop_get('scope') end def scope=(val) prop_set('scope', val) end def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Standard def standard if @create_children @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) else Standard.new(parent_instance: self) end end class Combination < ConfigClass def has_multiple_values? false end def _section :'combination' end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"source-and-destination", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id", "autocomplete"=>"yes", "memberof"=> ["##/predefined/threats/vulnerability/entry[not (time-attribute)]/@name", "##/predefined/threats/phone-home/entry[not (time-attribute)]/@name", "#config/shared/threats/vulnerability/entry[(signature/standard)]/@name", "#config/shared/threats/spyware/entry[(signature/standard)]/@name", "#dg-hier/threats/vulnerability/entry[(signature/standard)]/@name", "#dg-hier/threats/spyware/entry[(signature/standard)]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # threat id def threat_id prop_get('threat-id') end # threat id def threat_id=(val) prop_set('threat-id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Combination def combination @subclasses['combination'] ||= Combination.new(parent_instance: self, create_children: @create_children) end @props={} end # class Signature def signature if @create_children @subclasses['signature'] ||= Signature.new(parent_instance: self, create_children: @create_children) else Signature.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"15000", "max"=>"7000000", "help-string"=>"threat id range <15000-18000> and <6900001-7000000>"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "threatname"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "severity"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}, "direction"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/direction/entry/@name"]}} # threat id range <15000-18000> and <6900001-7000000> def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # alphanumeric string [ 0-9a-zA-Z._-] def threatname prop_get('threatname') end # alphanumeric string [ 0-9a-zA-Z._-] def threatname=(val) prop_set('threatname', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def severity prop_get('severity') end def severity=(val) prop_set('severity', val) end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end @props={} end # class Threats def threats @subclasses['threats'] ||= Threats.new(parent_instance: self, create_children: @create_children) end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HipObjects < XML::ConfigClass def has_multiple_values? true end def _section :'hip-objects' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class HostInfo < ConfigClass def has_multiple_values? false end def _section :'host-info' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class Domain < ConfigClass def has_multiple_values? false end def _section :'domain' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Domain def domain @subclasses['domain'] ||= Domain.new(parent_instance: self, create_children: @create_children) end class Os < ConfigClass def has_multiple_values? false end def _section :'os' end class Contains < ConfigClass def has_multiple_values? false end def _section :'contains' end @props={"Microsoft"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Microsoft vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Microsoft']/os/member"]}, "Apple"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Apple vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Apple']/os/member"]}, "Google"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Google vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Google']/os/member"]}, "Linux"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "default"=>"All", "loose-membership"=>"yes", "help-string"=>"Linux vendor", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/vendor/entry[@name='Linux']/os/member"]}, "Other"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "help-string"=>"Other vendor"}} # Microsoft vendor def Microsoft prop_get('Microsoft') end # Microsoft vendor def Microsoft=(val) prop_set('Microsoft', val) end # Apple vendor def Apple prop_get('Apple') end # Apple vendor def Apple=(val) prop_set('Apple', val) end # Google vendor def Google prop_get('Google') end # Google vendor def Google=(val) prop_set('Google', val) end # Linux vendor def Linux prop_get('Linux') end # Linux vendor def Linux=(val) prop_set('Linux', val) end # Other vendor def Other prop_get('Other') end # Other vendor def Other=(val) prop_set('Other', val) end end # class Contains def contains @subclasses['contains'] ||= Contains.new(parent_instance: self, create_children: @create_children) end @props={} end # class Os def os @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) end class ClientVersion < ConfigClass def has_multiple_values? false end def _section :'client-version' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class ClientVersion def client_version @subclasses['client-version'] ||= ClientVersion.new(parent_instance: self, create_children: @create_children) end class HostName < ConfigClass def has_multiple_values? false end def _section :'host-name' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class HostName def host_name @subclasses['host-name'] ||= HostName.new(parent_instance: self, create_children: @create_children) end class HostId < ConfigClass def has_multiple_values? false end def _section :'host-id' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class HostId def host_id @subclasses['host-id'] ||= HostId.new(parent_instance: self, create_children: @create_children) end class SerialNumber < ConfigClass def has_multiple_values? false end def _section :'serial-number' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class SerialNumber def serial_number @subclasses['serial-number'] ||= SerialNumber.new(parent_instance: self, create_children: @create_children) end @props={"managed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device is managed", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}} # If device is managed def managed prop_get('managed') end # If device is managed def managed=(val) prop_set('managed', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class HostInfo def host_info @subclasses['host-info'] ||= HostInfo.new(parent_instance: self, create_children: @create_children) end class NetworkInfo < ConfigClass def has_multiple_values? false end def _section :'network-info' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class Network < XML::ConfigClass def has_multiple_values? true end def _section :'network' end class Is < XML::ConfigClass def has_multiple_values? true end def _section :'is' end class Wifi < ConfigClass def has_multiple_values? false end def _section :'wifi' end @props={"ssid"=> {"node-type"=>"element", "type"=>"string", "uiHint-fieldLabel"=>"SSID", "maxlen"=>"1023", "regex"=>".*", "optional"=>"yes", "help-string"=>"SSID"}} # SSID def ssid prop_get('ssid') end # SSID def ssid=(val) prop_set('ssid', val) end end # class Wifi def wifi @subclasses['wifi'] ||= Wifi.new(parent_instance: self, create_children: @create_children) end class Mobile < ConfigClass def has_multiple_values? false end def _section :'mobile' end @props={"carrier"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "optional"=>"yes"}} def carrier prop_get('carrier') end def carrier=(val) prop_set('carrier', val) end end # class Mobile def mobile @subclasses['mobile'] ||= Mobile.new(parent_instance: self, create_children: @create_children) end class Unknown < ConfigClass def has_multiple_values? false end def _section :'unknown' end @props={} end # class Unknown def unknown @subclasses['unknown'] ||= Unknown.new(parent_instance: self, create_children: @create_children) end @props={} end # class Is def is if @create_children @subclasses['is'] ||= Is.new(parent_instance: self, create_children: @create_children) else Is.new(parent_instance: self) end end class IsNot < XML::ConfigClass def has_multiple_values? true end def _section :'is-not' end class Wifi < ConfigClass def has_multiple_values? false end def _section :'wifi' end @props={"ssid"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "uiHint-fieldLabel"=>"SSID", "regex"=>".*", "optional"=>"yes", "help-string"=>"SSID"}} # SSID def ssid prop_get('ssid') end # SSID def ssid=(val) prop_set('ssid', val) end end # class Wifi def wifi @subclasses['wifi'] ||= Wifi.new(parent_instance: self, create_children: @create_children) end class Mobile < ConfigClass def has_multiple_values? false end def _section :'mobile' end @props={"carrier"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "optional"=>"yes"}} def carrier prop_get('carrier') end def carrier=(val) prop_set('carrier', val) end end # class Mobile def mobile @subclasses['mobile'] ||= Mobile.new(parent_instance: self, create_children: @create_children) end class Ethernet < ConfigClass def has_multiple_values? false end def _section :'ethernet' end @props={} end # class Ethernet def ethernet @subclasses['ethernet'] ||= Ethernet.new(parent_instance: self, create_children: @create_children) end class Unknown < ConfigClass def has_multiple_values? false end def _section :'unknown' end @props={} end # class Unknown def unknown @subclasses['unknown'] ||= Unknown.new(parent_instance: self, create_children: @create_children) end @props={} end # class IsNot def is_not if @create_children @subclasses['is-not'] ||= IsNot.new(parent_instance: self, create_children: @create_children) else IsNot.new(parent_instance: self) end end @props={} end # class Network def network if @create_children @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) else Network.new(parent_instance: self) end end @props={} end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class NetworkInfo def network_info @subclasses['network-info'] ||= NetworkInfo.new(parent_instance: self, create_children: @create_children) end class PatchManagement < ConfigClass def has_multiple_values? false end def _section :'patch-management' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class MissingPatches < ConfigClass def has_multiple_values? false end def _section :'missing-patches' end class Severity < ConfigClass def has_multiple_values? false end def _section :'severity' end @props={"greater-equal"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "greater-than"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "is"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "is-not"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "less-equal"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}, "less-than"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"100000"}} def greater_equal prop_get('greater-equal') end def greater_equal=(val) prop_set('greater-equal', val) end def greater_than prop_get('greater-than') end def greater_than=(val) prop_set('greater-than', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end def less_equal prop_get('less-equal') end def less_equal=(val) prop_set('less-equal', val) end def less_than prop_get('less-than') end def less_than=(val) prop_set('less-than', val) end end # class Severity def severity @subclasses['severity'] ||= Severity.new(parent_instance: self, create_children: @create_children) end class Patches < XML::ConfigClass def has_multiple_values? true end def _section :'patches' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"patch security-bulletin-id or kb-article-id"}} # patch security-bulletin-id or kb-article-id def member prop_get('member') end # patch security-bulletin-id or kb-article-id def member=(val) prop_set('member', val) end end # class Patches def patches if @create_children @subclasses['patches'] ||= Patches.new(parent_instance: self, create_children: @create_children) else Patches.new(parent_instance: self) end end @props={"check"=> {"node-type"=>"element", "type"=>"enum", "default"=>"has-any", "enum"=> [{"value"=>"has-any"}, {"value"=>"has-none"}, {"value"=>"has-all"}]}} def check prop_get('check') end def check=(val) prop_set('check', val) end end # class MissingPatches def missing_patches @subclasses['missing-patches'] ||= MissingPatches.new(parent_instance: self, create_children: @create_children) end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "is-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"is enabled", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # is enabled def is_enabled prop_get('is-enabled') end # is enabled def is_enabled=(val) prop_set('is-enabled', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class PatchManagement def patch_management @subclasses['patch-management'] ||= PatchManagement.new(parent_instance: self, create_children: @create_children) end class DataLossPrevention < ConfigClass def has_multiple_values? false end def _section :'data-loss-prevention' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "is-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"is enabled", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # is enabled def is_enabled prop_get('is-enabled') end # is enabled def is_enabled=(val) prop_set('is-enabled', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class DataLossPrevention def data_loss_prevention @subclasses['data-loss-prevention'] ||= DataLossPrevention.new(parent_instance: self, create_children: @create_children) end class Firewall < ConfigClass def has_multiple_values? false end def _section :'firewall' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "is-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"is enabled", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # is enabled def is_enabled prop_get('is-enabled') end # is enabled def is_enabled=(val) prop_set('is-enabled', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class Firewall def firewall @subclasses['firewall'] ||= Firewall.new(parent_instance: self, create_children: @create_children) end class AntiMalware < ConfigClass def has_multiple_values? false end def _section :'anti-malware' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class VirdefVersion < ConfigClass def has_multiple_values? false end def _section :'virdef-version' end class Within < XML::ConfigClass def has_multiple_values? true end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "versions"=> {"node-type"=>"element", "help-string"=>"specify versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify versions range def versions prop_get('versions') end # specify versions range def versions=(val) prop_set('versions', val) end end # class Within def within if @create_children @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) else Within.new(parent_instance: self) end end class NotWithin < XML::ConfigClass def has_multiple_values? true end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "versions"=> {"node-type"=>"element", "help-string"=>"specify versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify versions range def versions prop_get('versions') end # specify versions range def versions=(val) prop_set('versions', val) end end # class NotWithin def not_within if @create_children @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) else NotWithin.new(parent_instance: self) end end @props={} end # class VirdefVersion def virdef_version @subclasses['virdef-version'] ||= VirdefVersion.new(parent_instance: self, create_children: @create_children) end class ProductVersion < ConfigClass def has_multiple_values? false end def _section :'product-version' end class Within < ConfigClass def has_multiple_values? false end def _section :'within' end @props={"versions"=> {"node-type"=>"element", "help-string"=>"versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # versions range def versions prop_get('versions') end # versions range def versions=(val) prop_set('versions', val) end end # class Within def within @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) end class NotWithin < ConfigClass def has_multiple_values? false end def _section :'not-within' end @props={"versions"=> {"node-type"=>"element", "help-string"=>"versions range", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}} # versions range def versions prop_get('versions') end # versions range def versions=(val) prop_set('versions', val) end end # class NotWithin def not_within @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) end @props={"greater-equal"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "greater-than"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "less-equal"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "less-than"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def greater_equal prop_get('greater-equal') end def greater_equal=(val) prop_set('greater-equal', val) end def greater_than prop_get('greater-than') end def greater_than=(val) prop_set('greater-than', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end def less_equal prop_get('less-equal') end def less_equal=(val) prop_set('less-equal', val) end def less_than prop_get('less-than') end def less_than=(val) prop_set('less-than', val) end def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end end # class ProductVersion def product_version @subclasses['product-version'] ||= ProductVersion.new(parent_instance: self, create_children: @create_children) end class LastScanTime < ConfigClass def has_multiple_values? false end def _section :'last-scan-time' end class NotAvailable < ConfigClass def has_multiple_values? false end def _section :'not-available' end @props={} end # class NotAvailable def not_available @subclasses['not-available'] ||= NotAvailable.new(parent_instance: self, create_children: @create_children) end class Within < XML::ConfigClass def has_multiple_values? true end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class Within def within if @create_children @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) else Within.new(parent_instance: self) end end class NotWithin < XML::ConfigClass def has_multiple_values? true end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class NotWithin def not_within if @create_children @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) else NotWithin.new(parent_instance: self) end end @props={} end # class LastScanTime def last_scan_time @subclasses['last-scan-time'] ||= LastScanTime.new(parent_instance: self, create_children: @create_children) end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}, "real-time-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"real time protection", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}, {"value"=>"not-available", "help-string"=>"Not Available"}]}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end # real time protection def real_time_protection prop_get('real-time-protection') end # real time protection def real_time_protection=(val) prop_set('real-time-protection', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class AntiMalware def anti_malware @subclasses['anti-malware'] ||= AntiMalware.new(parent_instance: self, create_children: @create_children) end class DiskBackup < ConfigClass def has_multiple_values? false end def _section :'disk-backup' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class LastBackupTime < ConfigClass def has_multiple_values? false end def _section :'last-backup-time' end class NotAvailable < ConfigClass def has_multiple_values? false end def _section :'not-available' end @props={} end # class NotAvailable def not_available @subclasses['not-available'] ||= NotAvailable.new(parent_instance: self, create_children: @create_children) end class Within < XML::ConfigClass def has_multiple_values? true end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class Within def within if @create_children @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) else Within.new(parent_instance: self) end end class NotWithin < XML::ConfigClass def has_multiple_values? true end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify time in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"24"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end # specify time in hours def hours prop_get('hours') end # specify time in hours def hours=(val) prop_set('hours', val) end end # class NotWithin def not_within if @create_children @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) else NotWithin.new(parent_instance: self) end end @props={} end # class LastBackupTime def last_backup_time @subclasses['last-backup-time'] ||= LastBackupTime.new(parent_instance: self, create_children: @create_children) end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class DiskBackup def disk_backup @subclasses['disk-backup'] ||= DiskBackup.new(parent_instance: self, create_children: @create_children) end class DiskEncryption < ConfigClass def has_multiple_values? false end def _section :'disk-encryption' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class EncryptedLocations < XML::ConfigClass def has_multiple_values? true end def _section :'encrypted-locations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class EncryptionState < XML::ConfigClass def has_multiple_values? true end def _section :'encryption-state' end @props={"is"=> {"node-type"=>"element", "type"=>"enum", "default"=>"encrypted", "enum"=> [{"value"=>"encrypted"}, {"value"=>"unencrypted"}, {"value"=>"partial"}, {"value"=>"unknown"}]}, "is-not"=> {"node-type"=>"element", "type"=>"enum", "default"=>"encrypted", "enum"=> [{"value"=>"encrypted"}, {"value"=>"unencrypted"}, {"value"=>"partial"}, {"value"=>"unknown"}]}} def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class EncryptionState def encryption_state if @create_children @subclasses['encryption-state'] ||= EncryptionState.new(parent_instance: self, create_children: @create_children) else EncryptionState.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"encryption location", "maxlen"=>"1023", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>["string('not-available')"]}} # encryption location def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class EncryptedLocations def encrypted_locations if @create_children @subclasses['encrypted-locations'] ||= EncryptedLocations.new(parent_instance: self, create_children: @create_children) else EncryptedLocations.new(parent_instance: self) end end @props={"is-installed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Is Installed"}} # Is Installed def is_installed prop_get('is-installed') end # Is Installed def is_installed=(val) prop_set('is-installed', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"103", "regex"=>".*", "autocomplete"=>"yes", "memberof"=>[]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"exclude-vendor"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}} def exclude_vendor prop_get('exclude-vendor') end def exclude_vendor=(val) prop_set('exclude-vendor', val) end end # class DiskEncryption def disk_encryption @subclasses['disk-encryption'] ||= DiskEncryption.new(parent_instance: self, create_children: @create_children) end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Process Name"}, "running"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes"}} # Process Name def name prop_get('@name') end def running prop_get('running') end def running=(val) prop_set('running', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry value name"}, "value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Registry value name def name prop_get('@name') end # Registry value data def value_data prop_get('value-data') end # Registry value data def value_data=(val) prop_set('value-data', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry key"}, "default-value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry key default value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Key does not exist or match specified value data"}} # Registry key def name prop_get('@name') end # Registry key default value data def default_value_data prop_get('default-value-data') end # Registry key default value data def default_value_data=(val) prop_set('default-value-data', val) end # Key does not exist or match specified value data def negate prop_get('negate') end # Key does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Key name"}, "value"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Key value"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Key name def name prop_get('@name') end # Key value def value prop_get('value') end # Key value def value=(val) prop_set('value', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Preference list"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Plist does not exist"}} # Preference list def name prop_get('@name') end # Plist does not exist def negate prop_get('negate') end # Plist does not exist def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end @props={} end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end class MobileDevice < ConfigClass def has_multiple_values? false end def _section :'mobile-device' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class LastCheckinTime < ConfigClass def has_multiple_values? false end def _section :'last-checkin-time' end class Within < ConfigClass def has_multiple_values? false end def _section :'within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"365", "min"=>"1", "default"=>"30"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end end # class Within def within @subclasses['within'] ||= Within.new(parent_instance: self, create_children: @create_children) end class NotWithin < ConfigClass def has_multiple_values? false end def _section :'not-within' end @props={"days"=> {"node-type"=>"element", "help-string"=>"specify time in days", "type"=>"rangedint", "max"=>"365", "min"=>"1", "default"=>"30"}} # specify time in days def days prop_get('days') end # specify time in days def days=(val) prop_set('days', val) end end # class NotWithin def not_within @subclasses['not-within'] ||= NotWithin.new(parent_instance: self, create_children: @create_children) end @props={} end # class LastCheckinTime def last_checkin_time @subclasses['last-checkin-time'] ||= LastCheckinTime.new(parent_instance: self, create_children: @create_children) end class Imei < ConfigClass def has_multiple_values? false end def _section :'imei' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Imei def imei @subclasses['imei'] ||= Imei.new(parent_instance: self, create_children: @create_children) end class Model < ConfigClass def has_multiple_values? false end def _section :'model' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Model def model @subclasses['model'] ||= Model.new(parent_instance: self, create_children: @create_children) end class PhoneNumber < ConfigClass def has_multiple_values? false end def _section :'phone-number' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class PhoneNumber def phone_number @subclasses['phone-number'] ||= PhoneNumber.new(parent_instance: self, create_children: @create_children) end class Tag < ConfigClass def has_multiple_values? false end def _section :'tag' end @props={"contains"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry/vsys/tags/entry/@name", "#myentry/vsys/tags/entry/@name"]}, "is"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry/vsys/tags/entry/@name", "#myentry/vsys/tags/entry/@name"]}, "is-not"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry/vsys/tags/entry/@name", "#myentry/vsys/tags/entry/@name"]}} def contains prop_get('contains') end def contains=(val) prop_set('contains', val) end def is prop_get('is') end def is=(val) prop_set('is', val) end def is_not prop_get('is-not') end def is_not=(val) prop_set('is-not', val) end end # class Tag def tag @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) end class Applications < ConfigClass def has_multiple_values? false end def _section :'applications' end class HasMalware < XML::ConfigClass def has_multiple_values? true end def _section :'has-malware' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end class Excludes < XML::ConfigClass def has_multiple_values? true end def _section :'excludes' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "package"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application package name"}, "hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application hash"}} def name prop_get('@name') end # application package name def package prop_get('package') end # application package name def package=(val) prop_set('package', val) end # application hash def hash prop_get('hash') end # application hash def hash=(val) prop_set('hash', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Excludes def excludes if @create_children @subclasses['excludes'] ||= Excludes.new(parent_instance: self, create_children: @create_children) else Excludes.new(parent_instance: self) end end @props={} end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class HasMalware def has_malware if @create_children @subclasses['has-malware'] ||= HasMalware.new(parent_instance: self, create_children: @create_children) else HasMalware.new(parent_instance: self) end end class Includes < XML::ConfigClass def has_multiple_values? true end def _section :'includes' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "package"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application package name"}, "hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"application hash"}} def name prop_get('@name') end # application package name def package prop_get('package') end # application package name def package=(val) prop_set('package', val) end # application hash def hash prop_get('hash') end # application hash def hash=(val) prop_set('hash', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Includes def includes if @create_children @subclasses['includes'] ||= Includes.new(parent_instance: self, create_children: @create_children) else Includes.new(parent_instance: self) end end @props={"has-unmanaged-app"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Has apps that are not managed", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}} # Has apps that are not managed def has_unmanaged_app prop_get('has-unmanaged-app') end # Has apps that are not managed def has_unmanaged_app=(val) prop_set('has-unmanaged-app', val) end end # class Applications def applications @subclasses['applications'] ||= Applications.new(parent_instance: self, create_children: @create_children) end @props={"jailbroken"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device is by rooted/jailbroken", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}, "disk-encrypted"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device's disk is encrypted", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}, "passcode-set"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"If device's passcode is present", "enum"=> [{"value"=>"no", "help-string"=>"No"}, {"value"=>"yes", "help-string"=>"Yes"}]}} # If device is by rooted/jailbroken def jailbroken prop_get('jailbroken') end # If device is by rooted/jailbroken def jailbroken=(val) prop_set('jailbroken', val) end # If device's disk is encrypted def disk_encrypted prop_get('disk-encrypted') end # If device's disk is encrypted def disk_encrypted=(val) prop_set('disk-encrypted', val) end # If device's passcode is present def passcode_set prop_get('passcode-set') end # If device's passcode is present def passcode_set=(val) prop_set('passcode-set', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class MobileDevice def mobile_device @subclasses['mobile-device'] ||= MobileDevice.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Attribute Name", "enum"=> [{"value"=>"serial-no"}, {"value"=>"signature-algorithm"}, {"value"=>"issuer"}, {"value"=>"valid-from"}, {"value"=>"valid-to"}, {"value"=>"subject"}, {"value"=>"certificate-template-name"}, {"value"=>"certificate-template-oid"}, {"value"=>"extended-key-usage"}, {"value"=>"subject-key-identifier"}, {"value"=>"authority-key-identifier"}, {"value"=>"subject-alternative-name-url"}, {"value"=>"subject-alternative-name-email"}, {"value"=>"subject-alternative-name-ip"}, {"value"=>"key-usage"}]}, "value"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Key value"}} # Attribute Name def name prop_get('@name') end # Key value def value prop_get('value') end # Key value def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#mytemplates/#dg-hier/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HipObjects def hip_objects if @create_children @subclasses['hip-objects'] ||= HipObjects.new(parent_instance: self, create_children: @create_children) else HipObjects.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MlavEngineFilebasedEnabled < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-engine-filebased-enabled' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=>[]}, "mlav-policy-action"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"enable(alert-only)"}, {"value"=>"disable"}]}} def name prop_get('@name') end def mlav_policy_action prop_get('mlav-policy-action') end def mlav_policy_action=(val) prop_set('mlav-policy-action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MlavEngineFilebasedEnabled def mlav_engine_filebased_enabled if @create_children @subclasses['mlav-engine-filebased-enabled'] ||= MlavEngineFilebasedEnabled.new(parent_instance: self, create_children: @create_children) else MlavEngineFilebasedEnabled.new(parent_instance: self) end end class Decoder < XML::ConfigClass def has_multiple_values? true end def _section :'decoder' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "content-dependent"=>"yes", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>[]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}, "wildfire-action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}, "mlav-action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end def wildfire_action prop_get('wildfire-action') end def wildfire_action=(val) prop_set('wildfire-action', val) end def mlav_action prop_get('mlav-action') end def mlav_action=(val) prop_set('mlav-action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decoder def decoder if @create_children @subclasses['decoder'] ||= Decoder.new(parent_instance: self, create_children: @create_children) else Decoder.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "content-dependent"=>"yes", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>[]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"drop"}, {"value"=>"reset-client"}, {"value"=>"reset-server"}, {"value"=>"reset-both"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[0-9]+$", "help-string"=>"threat id"}} # threat id def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end class MlavException < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"mlav exception feature vector"}, "filename"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # mlav exception feature vector def name prop_get('@name') end def filename prop_get('filename') end def filename=(val) prop_set('filename', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MlavException def mlav_exception if @create_children @subclasses['mlav-exception'] ||= MlavException.new(parent_instance: self, create_children: @create_children) else MlavException.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "packet-capture"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class BotnetDomains < ConfigClass def has_multiple_values? false end def _section :'botnet-domains' end class Lists < XML::ConfigClass def has_multiple_values? true end def _section :'lists' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={} end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end class Sinkhole < ConfigClass def has_multiple_values? false end def _section :'sinkhole' end @props={} end # class Sinkhole def sinkhole @subclasses['sinkhole'] ||= Sinkhole.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"List name, alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["#config/shared/external-list/entry[type/domain]/@name", "#myentry(vsys)/external-list/entry[type/domain]/@name", "string('default-paloalto-dns')", "#dg-hier/external-list/entry[type/domain]/@name"]}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # List name, alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Lists def lists if @create_children @subclasses['lists'] ||= Lists.new(parent_instance: self, create_children: @create_children) else Lists.new(parent_instance: self) end end class DnsSecurityCategories < XML::ConfigClass def has_multiple_values? true end def _section :'dns-security-categories' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["##/predefined/pan-dns-security-categories/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"allow"}, {"value"=>"block"}, {"value"=>"sinkhole"}]}, "log-level"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"default", "enum"=> [{"value"=>"default"}, {"value"=>"none"}, {"value"=>"low"}, {"value"=>"informational"}, {"value"=>"medium"}, {"value"=>"high"}, {"value"=>"critical"}]}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end def log_level prop_get('log-level') end def log_level=(val) prop_set('log-level', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DnsSecurityCategories def dns_security_categories if @create_children @subclasses['dns-security-categories'] ||= DnsSecurityCategories.new(parent_instance: self, create_children: @create_children) else DnsSecurityCategories.new(parent_instance: self) end end class Whitelist < XML::ConfigClass def has_multiple_values? true end def _section :'whitelist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"256", "regex"=>"^(\\*\\.)?([a-zA-Z0-9_-]+\\.)*([a-zA-Z0-9_-]+)$"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Whitelist def whitelist if @create_children @subclasses['whitelist'] ||= Whitelist.new(parent_instance: self, create_children: @create_children) else Whitelist.new(parent_instance: self) end end class Sinkhole < ConfigClass def has_multiple_values? false end def _section :'sinkhole' end @props={"ipv4-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"pan-sinkhole-default-ip", "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"127.0.0.1", "help-string"=>"IPv4 Loopback IP"}, {"value"=>"pan-sinkhole-default-ip", "help-string"=>"Palo Alto Networks Sinkhole IP"}]}}, "ipv6-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"::1", "multi-types"=> {"ipspec"=>{}, "enum"=>[{"value"=>"::1", "help-string"=>"IPv6 Loopback IP"}]}}} def ipv4_address prop_get('ipv4-address') end def ipv4_address=(val) prop_set('ipv4-address', val) end def ipv6_address prop_get('ipv6-address') end def ipv6_address=(val) prop_set('ipv6-address', val) end end # class Sinkhole def sinkhole @subclasses['sinkhole'] ||= Sinkhole.new(parent_instance: self, create_children: @create_children) end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"threat id"}} # threat id def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end @props={} end # class BotnetDomains def botnet_domains @subclasses['botnet-domains'] ||= BotnetDomains.new(parent_instance: self, create_children: @create_children) end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Severity < XML::ConfigClass def has_multiple_values? true end def _section :'severity' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All severities"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Severity def severity if @create_children @subclasses['severity'] ||= Severity.new(parent_instance: self, create_children: @create_children) else Severity.new(parent_instance: self) end end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-name"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "optional"=>"yes", "help-string"=>"Threat name", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"any"}]}}, "category"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/category/entry[spyware]/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Threat name def threat_name prop_get('threat-name') end # Threat name def threat_name=(val) prop_set('threat-name', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end class ExemptIp < XML::ConfigClass def has_multiple_values? true end def _section :'exempt-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Exempt IP address"}} # Exempt IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExemptIp def exempt_ip if @create_children @subclasses['exempt-ip'] ||= ExemptIp.new(parent_instance: self, create_children: @create_children) else ExemptIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id"}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # threat id def name prop_get('@name') end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Cve < XML::ConfigClass def has_multiple_values? true end def _section :'cve' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "maxlen"=>"63", "optional"=>"yes", "default"=>"any", "help-string"=>"CVE #, CVE-1999-0001 etc", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"All CVE"}]}}} # CVE #, CVE-1999-0001 etc def member prop_get('member') end # CVE #, CVE-1999-0001 etc def member=(val) prop_set('member', val) end end # class Cve def cve if @create_children @subclasses['cve'] ||= Cve.new(parent_instance: self, create_children: @create_children) else Cve.new(parent_instance: self) end end class VendorId < XML::ConfigClass def has_multiple_values? true end def _section :'vendor-id' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "maxlen"=>"63", "optional"=>"yes", "default"=>"any", "help-string"=>"Vendor ID", "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"All vendors"}]}}} # Vendor ID def member prop_get('member') end # Vendor ID def member=(val) prop_set('member', val) end end # class VendorId def vendor_id if @create_children @subclasses['vendor-id'] ||= VendorId.new(parent_instance: self, create_children: @create_children) else VendorId.new(parent_instance: self) end end class Severity < XML::ConfigClass def has_multiple_values? true end def _section :'severity' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All severities"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Severity def severity if @create_children @subclasses['severity'] ||= Severity.new(parent_instance: self, create_children: @create_children) else Severity.new(parent_instance: self) end end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "threat-name"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "optional"=>"yes", "help-string"=>"Threat name", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"any"}]}}, "host"=> {"node-type"=>"element", "type"=>"enum", "default"=>"any", "enum"=>[{"value"=>"any"}, {"value"=>"client"}, {"value"=>"server"}]}, "category"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/category/entry[vulnerability]/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Threat name def threat_name prop_get('threat-name') end # Threat name def threat_name=(val) prop_set('threat-name', val) end def host prop_get('host') end def host=(val) prop_set('host', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end class ThreatException < XML::ConfigClass def has_multiple_values? true end def _section :'threat-exception' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Drop < ConfigClass def has_multiple_values? false end def _section :'drop' end @props={} end # class Drop def drop @subclasses['drop'] ||= Drop.new(parent_instance: self, create_children: @create_children) end class ResetClient < ConfigClass def has_multiple_values? false end def _section :'reset-client' end @props={} end # class ResetClient def reset_client @subclasses['reset-client'] ||= ResetClient.new(parent_instance: self, create_children: @create_children) end class ResetServer < ConfigClass def has_multiple_values? false end def _section :'reset-server' end @props={} end # class ResetServer def reset_server @subclasses['reset-server'] ||= ResetServer.new(parent_instance: self, create_children: @create_children) end class ResetBoth < ConfigClass def has_multiple_values? false end def _section :'reset-both' end @props={} end # class ResetBoth def reset_both @subclasses['reset-both'] ||= ResetBoth.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end class TimeAttribute < ConfigClass def has_multiple_values? false end def _section :'time-attribute' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535"}, "track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"source"}, {"value"=>"destination"}, {"value"=>"source-and-destination"}]}} def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end end # class TimeAttribute def time_attribute @subclasses['time-attribute'] ||= TimeAttribute.new(parent_instance: self, create_children: @create_children) end class ExemptIp < XML::ConfigClass def has_multiple_values? true end def _section :'exempt-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Exempt IP address"}} # Exempt IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExemptIp def exempt_ip if @create_children @subclasses['exempt-ip'] ||= ExemptIp.new(parent_instance: self, create_children: @create_children) else ExemptIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"10", "regex"=>"^[0-9]+$", "help-string"=>"threat id"}, "packet-capture"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"disable", "enum"=> [{"value"=>"disable"}, {"value"=>"single-packet"}, {"value"=>"extended-capture"}]}} # threat id def name prop_get('@name') end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ThreatException def threat_exception if @create_children @subclasses['threat-exception'] ||= ThreatException.new(parent_instance: self, create_children: @create_children) else ThreatException.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Allow < XML::ConfigClass def has_multiple_values? true end def _section :'allow' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Allow def allow if @create_children @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) else Allow.new(parent_instance: self) end end class Alert < XML::ConfigClass def has_multiple_values? true end def _section :'alert' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Alert def alert if @create_children @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) else Alert.new(parent_instance: self) end end class Block < XML::ConfigClass def has_multiple_values? true end def _section :'block' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Block def block if @create_children @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) else Block.new(parent_instance: self) end end class Continue < XML::ConfigClass def has_multiple_values? true end def _section :'continue' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Continue def continue if @create_children @subclasses['continue'] ||= Continue.new(parent_instance: self, create_children: @create_children) else Continue.new(parent_instance: self) end end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end class CredentialEnforcement < ConfigClass def has_multiple_values? false end def _section :'credential-enforcement' end class Mode < XML::ConfigClass def has_multiple_values? true end def _section :'mode' end class Disabled < ConfigClass def has_multiple_values? false end def _section :'disabled' end @props={} end # class Disabled def disabled @subclasses['disabled'] ||= Disabled.new(parent_instance: self, create_children: @create_children) end class IpUser < ConfigClass def has_multiple_values? false end def _section :'ip-user' end @props={} end # class IpUser def ip_user @subclasses['ip-user'] ||= IpUser.new(parent_instance: self, create_children: @create_children) end class DomainCredentials < ConfigClass def has_multiple_values? false end def _section :'domain-credentials' end @props={} end # class DomainCredentials def domain_credentials @subclasses['domain-credentials'] ||= DomainCredentials.new(parent_instance: self, create_children: @create_children) end @props={"group-mapping"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "default"=>"any", "help-string"=>"Use Group Mapping", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/group-mapping/entry/@name", "string('any')"]}} # Use Group Mapping def group_mapping prop_get('group-mapping') end # Use Group Mapping def group_mapping=(val) prop_set('group-mapping', val) end end # class Mode def mode if @create_children @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) else Mode.new(parent_instance: self) end end class Allow < XML::ConfigClass def has_multiple_values? true end def _section :'allow' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Allow def allow if @create_children @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) else Allow.new(parent_instance: self) end end class Alert < XML::ConfigClass def has_multiple_values? true end def _section :'alert' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Alert def alert if @create_children @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) else Alert.new(parent_instance: self) end end class Block < XML::ConfigClass def has_multiple_values? true end def _section :'block' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Block def block if @create_children @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) else Block.new(parent_instance: self) end end class Continue < XML::ConfigClass def has_multiple_values? true end def _section :'continue' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Continue def continue if @create_children @subclasses['continue'] ||= Continue.new(parent_instance: self, create_children: @create_children) else Continue.new(parent_instance: self) end end @props={"log-severity"=> {"node-type"=>"element", "type"=>"string", "default"=>"medium", "help-string"=>"Log severity when credential matched", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}} # Log severity when credential matched def log_severity prop_get('log-severity') end # Log severity when credential matched def log_severity=(val) prop_set('log-severity', val) end end # class CredentialEnforcement def credential_enforcement @subclasses['credential-enforcement'] ||= CredentialEnforcement.new(parent_instance: self, create_children: @create_children) end class HttpHeaderInsertion < XML::ConfigClass def has_multiple_values? true end def _section :'http-header-insertion' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"100", "help-string"=>"Header name"}, "header"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"100", "complete-handler"=>"http-header-insertion-hdr-name-completer"}, "value"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"512", "complete-handler"=>"http-header-insertion-hdr-val-completer", "autocomplete"=>"yes"}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # Header name def name prop_get('@name') end def header prop_get('header') end def header=(val) prop_set('header', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Domains < XML::ConfigClass def has_multiple_values? true end def _section :'domains' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"254", "max-count"=>"50", "complete-handler"=>"http-header-insertion-host-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Domains def domains if @create_children @subclasses['domains'] ||= Domains.new(parent_instance: self, create_children: @create_children) else Domains.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"128", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$", "complete-handler"=>"http-header-insertion-type-completer", "autocomplete"=>"yes", "memberof"=> ["string('Custom')", "##/predefined/header-injection/entry/type"]}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"256", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HttpHeaderInsertion def http_header_insertion if @create_children @subclasses['http-header-insertion'] ||= HttpHeaderInsertion.new(parent_instance: self, create_children: @create_children) else HttpHeaderInsertion.new(parent_instance: self) end end class MlavCategoryException < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-category-exception' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/url]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class MlavCategoryException def mlav_category_exception if @create_children @subclasses['mlav-category-exception'] ||= MlavCategoryException.new(parent_instance: self, create_children: @create_children) else MlavCategoryException.new(parent_instance: self) end end class MlavEngineUrlbasedEnabled < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-engine-urlbased-enabled' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=>[]}, "mlav-policy-action"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}, {"value"=>"allow"}]}} def name prop_get('@name') end def mlav_policy_action prop_get('mlav-policy-action') end def mlav_policy_action=(val) prop_set('mlav-policy-action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MlavEngineUrlbasedEnabled def mlav_engine_urlbased_enabled if @create_children @subclasses['mlav-engine-urlbased-enabled'] ||= MlavEngineUrlbasedEnabled.new(parent_instance: self, create_children: @create_children) else MlavEngineUrlbasedEnabled.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "enable-container-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Track container page"}, "log-container-page-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Log container page only"}, "safe-search-enforcement"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Safe-Search will be enforced if it is set "}, "log-http-hdr-xff"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log HTTP Header X-Forwarded-For field"}, "log-http-hdr-user-agent"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log HTTP Header User-Agent field"}, "log-http-hdr-referer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log HTTP Header Referer field"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # Track container page def enable_container_page prop_get('enable-container-page') end # Track container page def enable_container_page=(val) prop_set('enable-container-page', val) end # Log container page only def log_container_page_only prop_get('log-container-page-only') end # Log container page only def log_container_page_only=(val) prop_set('log-container-page-only', val) end # Safe-Search will be enforced if it is set def safe_search_enforcement prop_get('safe-search-enforcement') end # Safe-Search will be enforced if it is set def safe_search_enforcement=(val) prop_set('safe-search-enforcement', val) end # Log HTTP Header X-Forwarded-For field def log_http_hdr_xff prop_get('log-http-hdr-xff') end # Log HTTP Header X-Forwarded-For field def log_http_hdr_xff=(val) prop_set('log-http-hdr-xff', val) end # Log HTTP Header User-Agent field def log_http_hdr_user_agent prop_get('log-http-hdr-user-agent') end # Log HTTP Header User-Agent field def log_http_hdr_user_agent=(val) prop_set('log-http-hdr-user-agent', val) end # Log HTTP Header Referer field def log_http_hdr_referer prop_get('log-http-hdr-referer') end # Log HTTP Header Referer field def log_http_hdr_referer=(val) prop_set('log-http-hdr-referer', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[file-type-ident='yes']/@name", "#myentry(vsys)/application/entry[file-type-ident='yes']/@name", "#config/shared/application/entry[file-type-ident='yes']/@name", "#config/shared/content-preview/application/entry[file-type-ident='yes']/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All applications"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All file types"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "direction"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"upload"}, {"value"=>"download"}, {"value"=>"both"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"alert", "enum"=>[{"value"=>"alert"}, {"value"=>"block"}, {"value"=>"continue"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[file-forward='yes']/@name", "#myentry(vsys)/application/entry[file-forward='yes']/@name", "#config/shared/application/entry[file-forward='yes']/@name", "#config/shared/content-preview/application/entry[file-forward='yes']/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All applications"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All types"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "direction"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"upload"}, {"value"=>"download"}, {"value"=>"both"}]}, "analysis"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"public-cloud", "enum"=>[{"value"=>"public-cloud"}, {"value"=>"private-cloud"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end def analysis prop_get('analysis') end def analysis=(val) prop_set('analysis', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"47", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class CustomUrlCategory < XML::ConfigClass def has_multiple_values? true end def _section :'custom-url-category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "complete-handler"=>"custom-url-category-member-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "type"=> {"node-type"=>"element", "type"=>"string", "default"=>"URL List", "autocomplete"=>"yes", "memberof"=>["string('URL List')", "string('Category Match')"]}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def type prop_get('type') end def type=(val) prop_set('type', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CustomUrlCategory def custom_url_category if @create_children @subclasses['custom-url-category'] ||= CustomUrlCategory.new(parent_instance: self, create_children: @create_children) else CustomUrlCategory.new(parent_instance: self) end end class MlavCategoryExceptionQuickset < XML::ConfigClass def has_multiple_values? true end def _section :'mlav-category-exception-quickset' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/custom-url-category/entry[type='URL List']/@name", "#dg-hier/profiles/custom-url-category/entry[type='URL List']/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class MlavCategoryExceptionQuickset def mlav_category_exception_quickset if @create_children @subclasses['mlav-category-exception-quickset'] ||= MlavCategoryExceptionQuickset.new(parent_instance: self, create_children: @create_children) else MlavCategoryExceptionQuickset.new(parent_instance: self) end end class DataObjects < XML::ConfigClass def has_multiple_values? true end def _section :'data-objects' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PatternType < XML::ConfigClass def has_multiple_values? true end def _section :'pattern-type' end class Predefined < ConfigClass def has_multiple_values? false end def _section :'predefined' end class Pattern < XML::ConfigClass def has_multiple_values? true end def _section :'pattern' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1024", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dlp-file-property/predefined-regex/entry/@name", "string('credit-card-numbers')", "string('social-security-numbers')", "string('social-security-numbers-without-dash')", "string('ABA-Routing-Number')", "string('CUSIP-Identification-Number')", "string('DEA-Registration-Number')", "string('INSEE-Identification-Number')", "string('Codice-Fiscale-Identification-Number')", "string('DNI-Identification-Number')", "string('NIF-Identification-Number')", "string('AHV-Identification-Number')", "string('NHI-Identification-Number')", "string('IRD-Identification-Number')", "string('MyNumber-Identification-Number')", "string('CorporateNumber-Identification-Number')", "string('PRC-Identification-Number')", "string('HK-Identification-Number')", "string('Permanent-Account-Identification-Number')", "string('NRIC-Identification-Number')", "string('MyKad-Identification-Number')", "string('RRN-Identification-Number')", "string('NIN-Identification-Number')"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Pattern def pattern if @create_children @subclasses['pattern'] ||= Pattern.new(parent_instance: self, create_children: @create_children) else Pattern.new(parent_instance: self) end end @props={} end # class Predefined def predefined @subclasses['predefined'] ||= Predefined.new(parent_instance: self, create_children: @create_children) end class Regex < ConfigClass def has_multiple_values? false end def _section :'regex' end class Pattern < XML::ConfigClass def has_multiple_values? true end def _section :'pattern' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "regex"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"1024"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def regex prop_get('regex') end def regex=(val) prop_set('regex', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Pattern def pattern if @create_children @subclasses['pattern'] ||= Pattern.new(parent_instance: self, create_children: @create_children) else Pattern.new(parent_instance: self) end end @props={} end # class Regex def regex @subclasses['regex'] ||= Regex.new(parent_instance: self, create_children: @create_children) end class FileProperties < ConfigClass def has_multiple_values? false end def _section :'file-properties' end class Pattern < XML::ConfigClass def has_multiple_values? true end def _section :'pattern' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "file-type"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/predefined/dlp-file-property/file-type/entry/@name"]}, "file-property"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dlp-file-property/file-type/entry[@name='$file_type']/file-property/entry/@name"]}, "property-value"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"256"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def file_type prop_get('file-type') end def file_type=(val) prop_set('file-type', val) end def file_property prop_get('file-property') end def file_property=(val) prop_set('file-property', val) end def property_value prop_get('property-value') end def property_value=(val) prop_set('property-value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Pattern def pattern if @create_children @subclasses['pattern'] ||= Pattern.new(parent_instance: self, create_children: @create_children) else Pattern.new(parent_instance: self) end end @props={} end # class FileProperties def file_properties @subclasses['file-properties'] ||= FileProperties.new(parent_instance: self, create_children: @create_children) end @props={} end # class PatternType def pattern_type if @create_children @subclasses['pattern-type'] ||= PatternType.new(parent_instance: self, create_children: @create_children) else PatternType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DataObjects def data_objects if @create_children @subclasses['data-objects'] ||= DataObjects.new(parent_instance: self, create_children: @create_children) else DataObjects.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[data-ident='yes']/@name", "#myentry(vsys)/application/entry[data-ident='yes']/@name", "#config/shared/application/entry[data-ident='yes']/@name", "#config/shared/content-preview/application/entry[data-ident='yes']/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"All applications"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class FileType < XML::ConfigClass def has_multiple_values? true end def _section :'file-type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/tdb/file-type/entry[data-ident='yes']/@name", "##/predefined/dlp-file-property/file-type/entry/@name"], "multi-types"=> {"string"=>{"content-dependent"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileType def file_type if @create_children @subclasses['file-type'] ||= FileType.new(parent_instance: self, create_children: @create_children) else FileType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "data-object"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/profiles/data-objects/entry/@name", "#config/shared/profiles/data-objects/entry/@name"]}, "direction"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"upload"}, {"value"=>"download"}, {"value"=>"both"}]}, "alert-threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"1", "optional"=>"yes"}, "block-threshold"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"1", "optional"=>"yes"}, "log-severity"=> {"node-type"=>"element", "type"=>"string", "default"=>"informational", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["##/predefined/tdb/severity/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def data_object prop_get('data-object') end def data_object=(val) prop_set('data-object', val) end def direction prop_get('direction') end def direction=(val) prop_set('direction', val) end def alert_threshold prop_get('alert-threshold') end def alert_threshold=(val) prop_set('alert-threshold', val) end def block_threshold prop_get('block-threshold') end def block_threshold=(val) prop_set('block-threshold', val) end def log_severity prop_get('log-severity') end def log_severity=(val) prop_set('log-severity', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "data-capture"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def data_capture prop_get('data-capture') end def data_capture=(val) prop_set('data-capture', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "match"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def match prop_get('match') end def match=(val) prop_set('match', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GtpInspection < ConfigClass def has_multiple_values? false end def _section :'gtp-inspection' end class GtpC < ConfigClass def has_multiple_values? false end def _section :'gtp-c' end class Gtpv1C < ConfigClass def has_multiple_values? false end def _section :'gtpv1-c' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"alert", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}]}, "reserved-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "order-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "length-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "reserved-hdr-field"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "unknown-message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def action prop_get('action') end def action=(val) prop_set('action', val) end def reserved_ie prop_get('reserved-ie') end def reserved_ie=(val) prop_set('reserved-ie', val) end def order_of_ie prop_get('order-of-ie') end def order_of_ie=(val) prop_set('order-of-ie', val) end def length_of_ie prop_get('length-of-ie') end def length_of_ie=(val) prop_set('length-of-ie', val) end def reserved_hdr_field prop_get('reserved-hdr-field') end def reserved_hdr_field=(val) prop_set('reserved-hdr-field', val) end def unknown_message prop_get('unknown-message') end def unknown_message=(val) prop_set('unknown-message', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end @props={"stateful-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def stateful_inspection prop_get('stateful-inspection') end def stateful_inspection=(val) prop_set('stateful-inspection', val) end end # class Gtpv1C def gtpv1_c @subclasses['gtpv1-c'] ||= Gtpv1C.new(parent_instance: self, create_children: @create_children) end class Gtpv2C < ConfigClass def has_multiple_values? false end def _section :'gtpv2-c' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"alert", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}]}, "reserved-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "length-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "reserved-hdr-field"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "unknown-message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def action prop_get('action') end def action=(val) prop_set('action', val) end def reserved_ie prop_get('reserved-ie') end def reserved_ie=(val) prop_set('reserved-ie', val) end def length_of_ie prop_get('length-of-ie') end def length_of_ie=(val) prop_set('length-of-ie', val) end def reserved_hdr_field prop_get('reserved-hdr-field') end def reserved_hdr_field=(val) prop_set('reserved-hdr-field', val) end def unknown_message prop_get('unknown-message') end def unknown_message=(val) prop_set('unknown-message', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end @props={"stateful-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def stateful_inspection prop_get('stateful-inspection') end def stateful_inspection=(val) prop_set('stateful-inspection', val) end end # class Gtpv2C def gtpv2_c @subclasses['gtpv2-c'] ||= Gtpv2C.new(parent_instance: self, create_children: @create_children) end @props={} end # class GtpC def gtp_c @subclasses['gtp-c'] ||= GtpC.new(parent_instance: self, create_children: @create_children) end class GtpU < ConfigClass def has_multiple_values? false end def _section :'gtp-u' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"alert", "enum"=>[{"value"=>"block"}, {"value"=>"alert"}]}, "reserved-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "order-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "length-of-ie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "reserved-hdr-field"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "unknown-message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def action prop_get('action') end def action=(val) prop_set('action', val) end def reserved_ie prop_get('reserved-ie') end def reserved_ie=(val) prop_set('reserved-ie', val) end def order_of_ie prop_get('order-of-ie') end def order_of_ie=(val) prop_set('order-of-ie', val) end def length_of_ie prop_get('length-of-ie') end def length_of_ie=(val) prop_set('length-of-ie', val) end def reserved_hdr_field prop_get('reserved-hdr-field') end def reserved_hdr_field=(val) prop_set('reserved-hdr-field', val) end def unknown_message prop_get('unknown-message') end def unknown_message=(val) prop_set('unknown-message', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end @props={"gtp-in-gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"block", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "user-ip-spoofing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"block", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "gtpu-content-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "GTPv1-C, GTPv2-C and/or 5G-C Stateful Inspection with GTP-U Content Inspection provides IMSI and IMEI correlation with IP traffic encapsulated in GTP-U packets"}} def gtp_in_gtp prop_get('gtp-in-gtp') end def gtp_in_gtp=(val) prop_set('gtp-in-gtp', val) end def user_ip_spoofing prop_get('user-ip-spoofing') end def user_ip_spoofing=(val) prop_set('user-ip-spoofing', val) end # GTPv1-C, GTPv2-C and/or 5G-C Stateful Inspection with GTP-U Content Inspection provides IMSI and IMEI correlation with IP traffic encapsulated in GTP-U packets def gtpu_content_inspection prop_get('gtpu-content-inspection') end # GTPv1-C, GTPv2-C and/or 5G-C Stateful Inspection with GTP-U Content Inspection provides IMSI and IMEI correlation with IP traffic encapsulated in GTP-U packets def gtpu_content_inspection=(val) prop_set('gtpu-content-inspection', val) end end # class GtpU def gtp_u @subclasses['gtp-u'] ||= GtpU.new(parent_instance: self, create_children: @create_children) end class Gtp5gC < ConfigClass def has_multiple_values? false end def _section :'gtp-5g-c' end @props={"gtp-5g-http2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"5g http2 inspection"}} # 5g http2 inspection def gtp_5g_http2 prop_get('gtp-5g-http2') end # 5g http2 inspection def gtp_5g_http2=(val) prop_set('gtp-5g-http2', val) end end # class Gtp5gC def gtp_5g_c @subclasses['gtp-5g-c'] ||= Gtp5gC.new(parent_instance: self, create_children: @create_children) end @props={} end # class GtpInspection def gtp_inspection @subclasses['gtp-inspection'] ||= GtpInspection.new(parent_instance: self, create_children: @create_children) end class Filtering < ConfigClass def has_multiple_values? false end def _section :'filtering' end class ImsiPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'imsi-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"15", "help-string"=>"digit string followed by an optional *", "regex"=>"^([*]|[0-9][0-9]+[* 0-9])$"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"36"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}} # digit string followed by an optional * def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ImsiPrefix def imsi_prefix if @create_children @subclasses['imsi-prefix'] ||= ImsiPrefix.new(parent_instance: self, create_children: @create_children) else ImsiPrefix.new(parent_instance: self) end end class Apn < XML::ConfigClass def has_multiple_values? true end def _section :'apn' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"100", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "regex"=>"^([*]|[ -)+-~]+)$"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"36"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Apn def apn if @create_children @subclasses['apn'] ||= Apn.new(parent_instance: self, create_children: @create_children) else Apn.new(parent_instance: self) end end class Rat < ConfigClass def has_multiple_values? false end def _section :'rat' end @props={"utran"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "geran"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "wlan"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "gan"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "hspa-evolution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "eutran"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "virtual"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "eutran-nb-iot"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "lte-m"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}, "nr"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}, {"value"=>"alert"}]}} def utran prop_get('utran') end def utran=(val) prop_set('utran', val) end def geran prop_get('geran') end def geran=(val) prop_set('geran', val) end def wlan prop_get('wlan') end def wlan=(val) prop_set('wlan', val) end def gan prop_get('gan') end def gan=(val) prop_set('gan', val) end def hspa_evolution prop_get('hspa-evolution') end def hspa_evolution=(val) prop_set('hspa-evolution', val) end def eutran prop_get('eutran') end def eutran=(val) prop_set('eutran', val) end def virtual prop_get('virtual') end def virtual=(val) prop_set('virtual', val) end def eutran_nb_iot prop_get('eutran-nb-iot') end def eutran_nb_iot=(val) prop_set('eutran-nb-iot', val) end def lte_m prop_get('lte-m') end def lte_m=(val) prop_set('lte-m', val) end def nr prop_get('nr') end def nr=(val) prop_set('nr', val) end end # class Rat def rat @subclasses['rat'] ||= Rat.new(parent_instance: self, create_children: @create_children) end @props={} end # class Filtering def filtering @subclasses['filtering'] ||= Filtering.new(parent_instance: self, create_children: @create_children) end class TunnelLimit < ConfigClass def has_multiple_values? false end def _section :'tunnel-limit' end class GtpU < ConfigClass def has_multiple_values? false end def _section :'gtp-u' end @props={"max-tunnel-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"100000000", "default"=>"0"}, "alert-tunnel-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"100000000", "default"=>"0"}} def max_tunnel_limit prop_get('max-tunnel-limit') end def max_tunnel_limit=(val) prop_set('max-tunnel-limit', val) end def alert_tunnel_limit prop_get('alert-tunnel-limit') end def alert_tunnel_limit=(val) prop_set('alert-tunnel-limit', val) end end # class GtpU def gtp_u @subclasses['gtp-u'] ||= GtpU.new(parent_instance: self, create_children: @create_children) end @props={"log-frequency"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10000000", "default"=>"100"}} def log_frequency prop_get('log-frequency') end def log_frequency=(val) prop_set('log-frequency', val) end end # class TunnelLimit def tunnel_limit @subclasses['tunnel-limit'] ||= TunnelLimit.new(parent_instance: self, create_children: @create_children) end class Overbilling < ConfigClass def has_multiple_values? false end def _section :'overbilling' end @props={"vsys"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "no-default"=>"yes", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#mytemplates/#dg-hier/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def vsys prop_get('vsys') end # alphanumeric string [ 0-9a-zA-Z._-] def vsys=(val) prop_set('vsys', val) end end # class Overbilling def overbilling @subclasses['overbilling'] ||= Overbilling.new(parent_instance: self, create_children: @create_children) end class GtpLog < ConfigClass def has_multiple_values? false end def _section :'gtp-log' end class Gtpv1cAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtpv1c-allowed-messages' end @props={"tunnel-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "path-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "others"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def tunnel_management prop_get('tunnel-management') end def tunnel_management=(val) prop_set('tunnel-management', val) end def path_management prop_get('path-management') end def path_management=(val) prop_set('path-management', val) end def others prop_get('others') end def others=(val) prop_set('others', val) end end # class Gtpv1cAllowedMessages def gtpv1c_allowed_messages @subclasses['gtpv1c-allowed-messages'] ||= Gtpv1cAllowedMessages.new(parent_instance: self, create_children: @create_children) end class Gtpv2cAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtpv2c-allowed-messages' end @props={"tunnel-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "path-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "others"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def tunnel_management prop_get('tunnel-management') end def tunnel_management=(val) prop_set('tunnel-management', val) end def path_management prop_get('path-management') end def path_management=(val) prop_set('path-management', val) end def others prop_get('others') end def others=(val) prop_set('others', val) end end # class Gtpv2cAllowedMessages def gtpv2c_allowed_messages @subclasses['gtpv2c-allowed-messages'] ||= Gtpv2cAllowedMessages.new(parent_instance: self, create_children: @create_children) end class GtpuAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtpu-allowed-messages' end @props={"tunnel-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "path-management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "g-pdu"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "packets-per-tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"1"}} def tunnel_management prop_get('tunnel-management') end def tunnel_management=(val) prop_set('tunnel-management', val) end def path_management prop_get('path-management') end def path_management=(val) prop_set('path-management', val) end def g_pdu prop_get('g-pdu') end def g_pdu=(val) prop_set('g-pdu', val) end def packets_per_tunnel prop_get('packets-per-tunnel') end def packets_per_tunnel=(val) prop_set('packets-per-tunnel', val) end end # class GtpuAllowedMessages def gtpu_allowed_messages @subclasses['gtpu-allowed-messages'] ||= GtpuAllowedMessages.new(parent_instance: self, create_children: @create_children) end class Gtp5gAllowedMessages < ConfigClass def has_multiple_values? false end def _section :'gtp-5g-allowed-messages' end @props={"N11"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}} def N11 prop_get('N11') end def N11=(val) prop_set('N11', val) end end # class Gtp5gAllowedMessages def gtp_5g_allowed_messages @subclasses['gtp-5g-allowed-messages'] ||= Gtp5gAllowedMessages.new(parent_instance: self, create_children: @create_children) end @props={"user-location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "packet-capture"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def user_location prop_get('user-location') end def user_location=(val) prop_set('user-location', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end end # class GtpLog def gtp_log @subclasses['gtp-log'] ||= GtpLog.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"128"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SctpInspection < ConfigClass def has_multiple_values? false end def _section :'sctp-inspection' end class ValidityChecks < ConfigClass def has_multiple_values? false end def _section :'validity-checks' end @props={"unknown-chunk"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}, "chunk-flags"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}, "invalid-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"block"}]}} def unknown_chunk prop_get('unknown-chunk') end def unknown_chunk=(val) prop_set('unknown-chunk', val) end def chunk_flags prop_get('chunk-flags') end def chunk_flags=(val) prop_set('chunk-flags', val) end def invalid_length prop_get('invalid-length') end def invalid_length=(val) prop_set('invalid-length', val) end end # class ValidityChecks def validity_checks @subclasses['validity-checks'] ||= ValidityChecks.new(parent_instance: self, create_children: @create_children) end class LogSetting < ConfigClass def has_multiple_values? false end def _section :'log-setting' end @props={"sctp-start"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log at Association Start"}, "sctp-end"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log at Association End"}, "init-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log Allowed Association Initialization Chunks"}, "heartbeat-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log Allowed Heartbeat Chunks"}, "termination-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log Allowed Association Termination Chunks"}, "all-control-chunks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Log All Control Chunks"}, "state-failure-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Log State Failure Events"}} # Log at Association Start def sctp_start prop_get('sctp-start') end # Log at Association Start def sctp_start=(val) prop_set('sctp-start', val) end # Log at Association End def sctp_end prop_get('sctp-end') end # Log at Association End def sctp_end=(val) prop_set('sctp-end', val) end # Log Allowed Association Initialization Chunks def init_chunks prop_get('init-chunks') end # Log Allowed Association Initialization Chunks def init_chunks=(val) prop_set('init-chunks', val) end # Log Allowed Heartbeat Chunks def heartbeat_chunks prop_get('heartbeat-chunks') end # Log Allowed Heartbeat Chunks def heartbeat_chunks=(val) prop_set('heartbeat-chunks', val) end # Log Allowed Association Termination Chunks def termination_chunks prop_get('termination-chunks') end # Log Allowed Association Termination Chunks def termination_chunks=(val) prop_set('termination-chunks', val) end # Log All Control Chunks def all_control_chunks prop_get('all-control-chunks') end # Log All Control Chunks def all_control_chunks=(val) prop_set('all-control-chunks', val) end # Log State Failure Events def state_failure_events prop_get('state-failure-events') end # Log State Failure Events def state_failure_events=(val) prop_set('state-failure-events', val) end end # class LogSetting def log_setting @subclasses['log-setting'] ||= LogSetting.new(parent_instance: self, create_children: @create_children) end @props={"multihoming"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"4"}} def multihoming prop_get('multihoming') end def multihoming=(val) prop_set('multihoming', val) end end # class SctpInspection def sctp_inspection @subclasses['sctp-inspection'] ||= SctpInspection.new(parent_instance: self, create_children: @create_children) end class SctpFiltering < ConfigClass def has_multiple_values? false end def _section :'sctp-filtering' end class SctpPpid < XML::ConfigClass def has_multiple_values? true end def _section :'sctp-ppid' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ppid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/sctp/sctp-id-mapping/category[@name='sctp-payload-protocol']/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def ppid prop_get('ppid') end def ppid=(val) prop_set('ppid', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SctpPpid def sctp_ppid if @create_children @subclasses['sctp-ppid'] ||= SctpPpid.new(parent_instance: self, create_children: @create_children) else SctpPpid.new(parent_instance: self) end end class SctpSs7 < XML::ConfigClass def has_multiple_values? true end def _section :'sctp-ss7' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ss7CpSsn < XML::ConfigClass def has_multiple_values? true end def _section :'ss7-cp-ssn' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ss7OpCode < XML::ConfigClass def has_multiple_values? true end def _section :'ss7-op-code' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"256", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/sctp/sctp-id-mapping/category[@name='ss7-ssn-op-code']/ssn[@name='$ssn_name']/opcode/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ss7OpCode def ss7_op_code if @create_children @subclasses['ss7-op-code'] ||= Ss7OpCode.new(parent_instance: self, create_children: @create_children) else Ss7OpCode.new(parent_instance: self) end end class Ss7CpGt < XML::ConfigClass def has_multiple_values? true end def _section :'ss7-cp-gt' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"512", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"15", "help-string"=>"digit string followed by an optional *", "regex"=>"^([0-9])*[* 0-9]$"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ss7CpGt def ss7_cp_gt if @create_children @subclasses['ss7-cp-gt'] ||= Ss7CpGt.new(parent_instance: self, create_children: @create_children) else Ss7CpGt.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "help-string"=>"SCCP SSN name", "autocomplete"=>"yes", "memberof"=>[]}} # SCCP SSN name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ss7CpSsn def ss7_cp_ssn if @create_children @subclasses['ss7-cp-ssn'] ||= Ss7CpSsn.new(parent_instance: self, create_children: @create_children) else Ss7CpSsn.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"20", "sub-type"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SctpSs7 def sctp_ss7 if @create_children @subclasses['sctp-ss7'] ||= SctpSs7.new(parent_instance: self, create_children: @create_children) else SctpSs7.new(parent_instance: self) end end class SctpDiameter < XML::ConfigClass def has_multiple_values? true end def _section :'sctp-diameter' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DiameterApplicationId < XML::ConfigClass def has_multiple_values? true end def _section :'diameter-application-id' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DiameterCmdCode < XML::ConfigClass def has_multiple_values? true end def _section :'diameter-cmd-code' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"128", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/sctp/sctp-id-mapping/category[@name='diameter-application-id-command-code']/application-id[@name='$cc_name']/command-code/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DiameterCmdCode def diameter_cmd_code if @create_children @subclasses['diameter-cmd-code'] ||= DiameterCmdCode.new(parent_instance: self, create_children: @create_children) else DiameterCmdCode.new(parent_instance: self) end end class DiameterAvp < XML::ConfigClass def has_multiple_values? true end def _section :'diameter-avp' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"512", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"16777215"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DiameterAvp def diameter_avp if @create_children @subclasses['diameter-avp'] ||= DiameterAvp.new(parent_instance: self, create_children: @create_children) else DiameterAvp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"appid name", "autocomplete"=>"yes", "memberof"=>[]}} # appid name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DiameterApplicationId def diameter_application_id if @create_children @subclasses['diameter-application-id'] ||= DiameterApplicationId.new(parent_instance: self, create_children: @create_children) else DiameterApplicationId.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=>[{"value"=>"allow"}, {"value"=>"alert"}, {"value"=>"block"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SctpDiameter def sctp_diameter if @create_children @subclasses['sctp-diameter'] ||= SctpDiameter.new(parent_instance: self, create_children: @create_children) else SctpDiameter.new(parent_instance: self) end end @props={} end # class SctpFiltering def sctp_filtering @subclasses['sctp-filtering'] ||= SctpFiltering.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"20", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end class DosProtection < XML::ConfigClass def has_multiple_values? true end def _section :'dos-protection' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Flood < ConfigClass def has_multiple_values? false end def _section :'flood' end class TcpSyn < ConfigClass def has_multiple_values? false end def _section :'tcp-syn' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end class SynCookies < ConfigClass def has_multiple_values? false end def _section :'syn-cookies' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"0", "help-string"=>"Connection rate (cps) to activate SYN cookies proxy"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"1000000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to activate SYN cookies proxy def activate_rate prop_get('activate-rate') end # Connection rate (cps) to activate SYN cookies proxy def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class SynCookies def syn_cookies @subclasses['syn-cookies'] ||= SynCookies.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class TcpSyn def tcp_syn @subclasses['tcp-syn'] ||= TcpSyn.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end class Icmp < ConfigClass def has_multiple_values? false end def _section :'icmp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmp def icmp @subclasses['icmp'] ||= Icmp.new(parent_instance: self, create_children: @create_children) end class Icmpv6 < ConfigClass def has_multiple_values? false end def _section :'icmpv6' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmpv6 def icmpv6 @subclasses['icmpv6'] ||= Icmpv6.new(parent_instance: self, create_children: @create_children) end class OtherIp < ConfigClass def has_multiple_values? false end def _section :'other-ip' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={"duration"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"21600", "default"=>"300"}} def duration prop_get('duration') end def duration=(val) prop_set('duration', val) end end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class OtherIp def other_ip @subclasses['other-ip'] ||= OtherIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Flood def flood @subclasses['flood'] ||= Flood.new(parent_instance: self, create_children: @create_children) end class Resource < ConfigClass def has_multiple_values? false end def _section :'resource' end class Sessions < ConfigClass def has_multiple_values? false end def _section :'sessions' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-concurrent-limit"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"4194304", "platform-max"=>"cfg.general.max-session", "default"=>"32768"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end def max_concurrent_limit prop_get('max-concurrent-limit') end def max_concurrent_limit=(val) prop_set('max-concurrent-limit', val) end end # class Sessions def sessions @subclasses['sessions'] ||= Sessions.new(parent_instance: self, create_children: @create_children) end @props={} end # class Resource def resource @subclasses['resource'] ||= Resource.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "type"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"aggregate"}, {"value"=>"classified"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def type prop_get('type') end def type=(val) prop_set('type', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DosProtection def dos_protection if @create_children @subclasses['dos-protection'] ||= DosProtection.new(parent_instance: self, create_children: @create_children) else DosProtection.new(parent_instance: self) end end class SdwanPathQuality < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-path-quality' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Metric < ConfigClass def has_multiple_values? false end def _section :'metric' end class Latency < ConfigClass def has_multiple_values? false end def _section :'latency' end @props={"threshold"=> {"node-type"=>"element", "help-string"=>"latency threshold in ms", "type"=>"rangedint", "max"=>"3000", "min"=>"10", "default"=>"100"}, "sensitivity"=> {"node-type"=>"element", "help-string"=>"latency sensitivity", "type"=>"enum", "default"=>"medium", "enum"=> [{"value"=>"low", "help-string"=>"low latency sensitivity"}, {"value"=>"medium", "help-string"=>"medium latency sensitivity"}, {"value"=>"high", "help-string"=>"high latency sensitivity"}]}} # latency threshold in ms def threshold prop_get('threshold') end # latency threshold in ms def threshold=(val) prop_set('threshold', val) end # latency sensitivity def sensitivity prop_get('sensitivity') end # latency sensitivity def sensitivity=(val) prop_set('sensitivity', val) end end # class Latency def latency @subclasses['latency'] ||= Latency.new(parent_instance: self, create_children: @create_children) end class PktLoss < ConfigClass def has_multiple_values? false end def _section :'pkt-loss' end @props={"threshold"=> {"node-type"=>"element", "help-string"=>"percentage pkt-loss", "type"=>"rangedint", "max"=>"100", "min"=>"1", "default"=>"1"}, "sensitivity"=> {"node-type"=>"element", "help-string"=>"pkt-loss sensitivity", "type"=>"enum", "default"=>"medium", "enum"=> [{"value"=>"low", "help-string"=>"low pkt-loss sensitivity"}, {"value"=>"medium", "help-string"=>"medium pkt-loss sensitivity"}, {"value"=>"high", "help-string"=>"high pkt-loss sensitivity"}]}} # percentage pkt-loss def threshold prop_get('threshold') end # percentage pkt-loss def threshold=(val) prop_set('threshold', val) end # pkt-loss sensitivity def sensitivity prop_get('sensitivity') end # pkt-loss sensitivity def sensitivity=(val) prop_set('sensitivity', val) end end # class PktLoss def pkt_loss @subclasses['pkt-loss'] ||= PktLoss.new(parent_instance: self, create_children: @create_children) end class Jitter < ConfigClass def has_multiple_values? false end def _section :'jitter' end @props={"threshold"=> {"node-type"=>"element", "help-string"=>"jitter threshold in ms", "type"=>"rangedint", "max"=>"2000", "min"=>"10", "default"=>"100"}, "sensitivity"=> {"node-type"=>"element", "help-string"=>"jitter sensitivity", "type"=>"enum", "default"=>"medium", "enum"=> [{"value"=>"low", "help-string"=>"low jitter sensitivity"}, {"value"=>"medium", "help-string"=>"medium jitter sensitivity"}, {"value"=>"high", "help-string"=>"high jitter sensitivity"}]}} # jitter threshold in ms def threshold prop_get('threshold') end # jitter threshold in ms def threshold=(val) prop_set('threshold', val) end # jitter sensitivity def sensitivity prop_get('sensitivity') end # jitter sensitivity def sensitivity=(val) prop_set('sensitivity', val) end end # class Jitter def jitter @subclasses['jitter'] ||= Jitter.new(parent_instance: self, create_children: @create_children) end @props={} end # class Metric def metric @subclasses['metric'] ||= Metric.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanPathQuality def sdwan_path_quality if @create_children @subclasses['sdwan-path-quality'] ||= SdwanPathQuality.new(parent_instance: self, create_children: @create_children) else SdwanPathQuality.new(parent_instance: self) end end class SdwanTrafficDistribution < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-traffic-distribution' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LinkTags < XML::ConfigClass def has_multiple_values? true end def _section :'link-tags' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"255", "help-string"=>"Link-Group identifying set of interfaces", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/template-stack/entry/config/devices/entry/vsys/entry/sdwan-interface-profile/entry/link-tag", "#config/devices/entry/template/entry/config/devices/entry/vsys/entry/sdwan-interface-profile/entry/link-tag", "#config/devices/entry/template-stack/entry/config/devices/entry/network/interface/sdwan/units/entry/link-tag", "#config/devices/entry/template/entry/config/devices/entry/network/interface/sdwan/units/entry/link-tag", "#config/devices/entry/template-stack/entry/config/devices/entry/network/interface/tunnel/units/entry/link-tag", "#config/devices/entry/template/entry/config/devices/entry/network/interface/tunnel/units/entry/link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/vif-link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/type/hub/vif-link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/type/branch/vif-link-tag", "#config/devices/entry/plugins/sd_wan/devices/entry/type/branch/vif-link-tag"]}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"grade weight in percentage", "type"=>"rangedint", "min"=>"0", "max"=>"100"}} # Link-Group identifying set of interfaces def name prop_get('@name') end # grade weight in percentage def weight prop_get('weight') end # grade weight in percentage def weight=(val) prop_set('weight', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LinkTags def link_tags if @create_children @subclasses['link-tags'] ||= LinkTags.new(parent_instance: self, create_children: @create_children) else LinkTags.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "traffic-distribution"=> {"node-type"=>"element", "help-string"=>"Enable Session Distribution across Links", "type"=>"enum", "default"=>"Best Available Path", "enum"=> [{"value"=>"Best Available Path", "help-string"=>"Best Available Path"}, {"value"=>"Top Down Priority", "help-string"=>"Top Down Priority"}, {"value"=>"Weighted Session Distribution", "help-string"=>"Weighted Session Distribution"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # Enable Session Distribution across Links def traffic_distribution prop_get('traffic-distribution') end # Enable Session Distribution across Links def traffic_distribution=(val) prop_set('traffic-distribution', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanTrafficDistribution def sdwan_traffic_distribution if @create_children @subclasses['sdwan-traffic-distribution'] ||= SdwanTrafficDistribution.new(parent_instance: self, create_children: @create_children) else SdwanTrafficDistribution.new(parent_instance: self) end end class SdwanSaasQuality < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-saas-quality' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MonitorMode < ConfigClass def has_multiple_values? false end def _section :'monitor-mode' end class Adaptive < ConfigClass def has_multiple_values? false end def _section :'adaptive' end @props={} end # class Adaptive def adaptive @subclasses['adaptive'] ||= Adaptive.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end class IpAddress < XML::ConfigClass def has_multiple_values? true end def _section :'ip-address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"Monitor IP address", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(vsys)/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(shared-gateway)/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}, "probe-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"Interval in seconds between two probes"}} # Monitor IP address def name prop_get('@name') end # Interval in seconds between two probes def probe_interval prop_get('probe-interval') end # Interval in seconds between two probes def probe_interval=(val) prop_set('probe-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpAddress def ip_address if @create_children @subclasses['ip-address'] ||= IpAddress.new(parent_instance: self, create_children: @create_children) else IpAddress.new(parent_instance: self) end end class Fqdn < ConfigClass def has_multiple_values? false end def _section :'fqdn' end @props={"fqdn-name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"FQDN to be monitored", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/address/entry[fqdn]/@name", "#myentry(vsys)/address/entry[fqdn]/@name", "#config/shared/address/entry[fqdn]/@name", "#myentry(shared-gateway)/address/entry[fqdn]/@name"]}, "probe-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"Interval in seconds between two probes"}} # FQDN to be monitored def fqdn_name prop_get('fqdn-name') end # FQDN to be monitored def fqdn_name=(val) prop_set('fqdn-name', val) end # Interval in seconds between two probes def probe_interval prop_get('probe-interval') end # Interval in seconds between two probes def probe_interval=(val) prop_set('probe-interval', val) end end # class Fqdn def fqdn @subclasses['fqdn'] ||= Fqdn.new(parent_instance: self, create_children: @create_children) end @props={} end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end class HttpHttps < ConfigClass def has_multiple_values? false end def _section :'http-https' end @props={"monitored-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"http or https URL : Ex : https://www.paloaltonetworks.com"}, "probe-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"Interval in seconds between two probes"}} # http or https URL : Ex : https://www.paloaltonetworks.com def monitored_url prop_get('monitored-url') end # http or https URL : Ex : https://www.paloaltonetworks.com def monitored_url=(val) prop_set('monitored-url', val) end # Interval in seconds between two probes def probe_interval prop_get('probe-interval') end # Interval in seconds between two probes def probe_interval=(val) prop_set('probe-interval', val) end end # class HttpHttps def http_https @subclasses['http-https'] ||= HttpHttps.new(parent_instance: self, create_children: @create_children) end @props={} end # class MonitorMode def monitor_mode @subclasses['monitor-mode'] ||= MonitorMode.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanSaasQuality def sdwan_saas_quality if @create_children @subclasses['sdwan-saas-quality'] ||= SdwanSaasQuality.new(parent_instance: self, create_children: @create_children) else SdwanSaasQuality.new(parent_instance: self) end end class SdwanErrorCorrection < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-error-correction' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Mode < ConfigClass def has_multiple_values? false end def _section :'mode' end class ForwardErrorCorrection < ConfigClass def has_multiple_values? false end def _section :'forward-error-correction' end @props={"ratio"=> {"node-type"=>"element", "help-string"=>"Packet Loss Correction Ratio", "type"=>"enum", "default"=>"10% (20:2)", "enum"=> [{"value"=>"10% (20:2)", "help-string"=>"2 parity pkts for every 20 data packets"}, {"value"=>"20% (20:4)", "help-string"=>"4 parity pkts for every 20 data packets"}, {"value"=>"30% (20:6)", "help-string"=>"6 parity pkts for every 20 data packets"}, {"value"=>"40% (20:8)", "help-string"=>"8 parity pkts for every 20 data packets"}, {"value"=>"50% (20:10)", "help-string"=>"10 parity pkts for every 20 data packets"}]}, "recovery-duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5000", "default"=>"1000", "help-string"=> "Time in ms for which FEC packets can remain in the firewall"}} # Packet Loss Correction Ratio def ratio prop_get('ratio') end # Packet Loss Correction Ratio def ratio=(val) prop_set('ratio', val) end # Time in ms for which FEC packets can remain in the firewall def recovery_duration prop_get('recovery-duration') end # Time in ms for which FEC packets can remain in the firewall def recovery_duration=(val) prop_set('recovery-duration', val) end end # class ForwardErrorCorrection def forward_error_correction @subclasses['forward-error-correction'] ||= ForwardErrorCorrection.new(parent_instance: self, create_children: @create_children) end class PacketDuplication < ConfigClass def has_multiple_values? false end def _section :'packet-duplication' end @props={"recovery-duration-pd"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5000", "default"=>"1000", "help-string"=> "Time in ms for which PD packets can remain in the firewall"}} # Time in ms for which PD packets can remain in the firewall def recovery_duration_pd prop_get('recovery-duration-pd') end # Time in ms for which PD packets can remain in the firewall def recovery_duration_pd=(val) prop_set('recovery-duration-pd', val) end end # class PacketDuplication def packet_duplication @subclasses['packet-duplication'] ||= PacketDuplication.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "activation-threshold"=> {"node-type"=>"element", "help-string"=>"Activate when pkt loss exceeds this threshold percentage", "type"=>"rangedint", "min"=>"1", "max"=>"99", "default"=>"2"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # Activate when pkt loss exceeds this threshold percentage def activation_threshold prop_get('activation-threshold') end # Activate when pkt loss exceeds this threshold percentage def activation_threshold=(val) prop_set('activation-threshold', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanErrorCorrection def sdwan_error_correction if @create_children @subclasses['sdwan-error-correction'] ||= SdwanErrorCorrection.new(parent_instance: self, create_children: @create_children) else SdwanErrorCorrection.new(parent_instance: self) end end class Decryption < XML::ConfigClass def has_multiple_values? true end def _section :'decryption' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SslForwardProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-forward-proxy' end @props={"block-expired-certificate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is expired"}, "block-untrusted-issuer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is issued by untrusted CA"}, "block-tls13-downgrade-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to downgrade from tls1.3 if device has not enough resources"}, "restrict-cert-exts"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to restrict certificates' extensions"}, "block-unsupported-version"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssl version is not supported"}, "block-unsupported-cipher"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if ssl cipher suite is not supported"}, "block-client-cert"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if client certificate authentication is used"}, "block-if-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if device has no enough resources"}, "block-if-hsm-unavailable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if HSM is unavailable"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "auto-include-altname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to automatically append SAN to impersonating certificate if server certificate is missing SAN"}, "strip-alpn"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Strip ALPN extension in client hello"}} # whether to block sessions if server's certificate is expired def block_expired_certificate prop_get('block-expired-certificate') end # whether to block sessions if server's certificate is expired def block_expired_certificate=(val) prop_set('block-expired-certificate', val) end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer prop_get('block-untrusted-issuer') end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer=(val) prop_set('block-untrusted-issuer', val) end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource prop_get('block-tls13-downgrade-no-resource') end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource=(val) prop_set('block-tls13-downgrade-no-resource', val) end # whether to restrict certificates' extensions def restrict_cert_exts prop_get('restrict-cert-exts') end # whether to restrict certificates' extensions def restrict_cert_exts=(val) prop_set('restrict-cert-exts', val) end # whether to block sessions if ssl version is not supported def block_unsupported_version prop_get('block-unsupported-version') end # whether to block sessions if ssl version is not supported def block_unsupported_version=(val) prop_set('block-unsupported-version', val) end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher prop_get('block-unsupported-cipher') end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher=(val) prop_set('block-unsupported-cipher', val) end # whether to block sessions if client certificate authentication is used def block_client_cert prop_get('block-client-cert') end # whether to block sessions if client certificate authentication is used def block_client_cert=(val) prop_set('block-client-cert', val) end # whether to block sessions if device has no enough resources def block_if_no_resource prop_get('block-if-no-resource') end # whether to block sessions if device has no enough resources def block_if_no_resource=(val) prop_set('block-if-no-resource', val) end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable prop_get('block-if-hsm-unavailable') end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable=(val) prop_set('block-if-hsm-unavailable', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to automatically append SAN to impersonating certificate if server certificate is missing SAN def auto_include_altname prop_get('auto-include-altname') end # whether to automatically append SAN to impersonating certificate if server certificate is missing SAN def auto_include_altname=(val) prop_set('auto-include-altname', val) end # Strip ALPN extension in client hello def strip_alpn prop_get('strip-alpn') end # Strip ALPN extension in client hello def strip_alpn=(val) prop_set('strip-alpn', val) end end # class SslForwardProxy def ssl_forward_proxy @subclasses['ssl-forward-proxy'] ||= SslForwardProxy.new(parent_instance: self, create_children: @create_children) end class SslInboundProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-inbound-proxy' end @props={"block-unsupported-version"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssl version is not supported"}, "block-unsupported-cipher"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if ssl cipher suite is not supported"}, "block-if-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if device has no enough resources"}, "block-tls13-downgrade-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to downgrade from tls1.3 if device has not enough resources"}, "block-if-hsm-unavailable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if HSM is unavailable"}} # whether to block sessions if ssl version is not supported def block_unsupported_version prop_get('block-unsupported-version') end # whether to block sessions if ssl version is not supported def block_unsupported_version=(val) prop_set('block-unsupported-version', val) end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher prop_get('block-unsupported-cipher') end # whether to block sessions if ssl cipher suite is not supported def block_unsupported_cipher=(val) prop_set('block-unsupported-cipher', val) end # whether to block sessions if device has no enough resources def block_if_no_resource prop_get('block-if-no-resource') end # whether to block sessions if device has no enough resources def block_if_no_resource=(val) prop_set('block-if-no-resource', val) end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource prop_get('block-tls13-downgrade-no-resource') end # whether to downgrade from tls1.3 if device has not enough resources def block_tls13_downgrade_no_resource=(val) prop_set('block-tls13-downgrade-no-resource', val) end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable prop_get('block-if-hsm-unavailable') end # whether to block sessions if HSM is unavailable def block_if_hsm_unavailable=(val) prop_set('block-if-hsm-unavailable', val) end end # class SslInboundProxy def ssl_inbound_proxy @subclasses['ssl-inbound-proxy'] ||= SslInboundProxy.new(parent_instance: self, create_children: @create_children) end class SslProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'ssl-protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"tls1-3", "help-string"=>"TLSv1.3"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-2", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"tls1-3", "help-string"=>"TLSv1.3"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "enc-algo-chacha20-poly1305"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm chacha20-poly1305"}, "auth-algo-md5__13"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Allow authentication MD5"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow algorithm chacha20-poly1305 def enc_algo_chacha20_poly1305 prop_get('enc-algo-chacha20-poly1305') end # Allow algorithm chacha20-poly1305 def enc_algo_chacha20_poly1305=(val) prop_set('enc-algo-chacha20-poly1305', val) end # Allow authentication MD5 def auth_algo_md5__13 prop_get('auth-algo-md5__13') end # Allow authentication MD5 def auth_algo_md5__13=(val) prop_set('auth-algo-md5__13', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class SslProtocolSettings def ssl_protocol_settings @subclasses['ssl-protocol-settings'] ||= SslProtocolSettings.new(parent_instance: self, create_children: @create_children) end class SslNoProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-no-proxy' end @props={"block-expired-certificate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is expired"}, "block-untrusted-issuer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is issued by untrusted CA"}} # whether to block sessions if server's certificate is expired def block_expired_certificate prop_get('block-expired-certificate') end # whether to block sessions if server's certificate is expired def block_expired_certificate=(val) prop_set('block-expired-certificate', val) end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer prop_get('block-untrusted-issuer') end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer=(val) prop_set('block-untrusted-issuer', val) end end # class SslNoProxy def ssl_no_proxy @subclasses['ssl-no-proxy'] ||= SslNoProxy.new(parent_instance: self, create_children: @create_children) end class SshProxy < ConfigClass def has_multiple_values? false end def _section :'ssh-proxy' end @props={"block-unsupported-version"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssh version is not supported"}, "block-unsupported-alg"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if ssh algorithm is not supported"}, "block-ssh-errors"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"whether to block sessions if ssh errors are encountered"}, "block-if-no-resource"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if device has no enough resources"}} # whether to block sessions if ssh version is not supported def block_unsupported_version prop_get('block-unsupported-version') end # whether to block sessions if ssh version is not supported def block_unsupported_version=(val) prop_set('block-unsupported-version', val) end # whether to block sessions if ssh algorithm is not supported def block_unsupported_alg prop_get('block-unsupported-alg') end # whether to block sessions if ssh algorithm is not supported def block_unsupported_alg=(val) prop_set('block-unsupported-alg', val) end # whether to block sessions if ssh errors are encountered def block_ssh_errors prop_get('block-ssh-errors') end # whether to block sessions if ssh errors are encountered def block_ssh_errors=(val) prop_set('block-ssh-errors', val) end # whether to block sessions if device has no enough resources def block_if_no_resource prop_get('block-if-no-resource') end # whether to block sessions if device has no enough resources def block_if_no_resource=(val) prop_set('block-if-no-resource', val) end end # class SshProxy def ssh_proxy @subclasses['ssh-proxy'] ||= SshProxy.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"decrypt mirror port", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#myentry(devices)/network/interface/ethernet/entry[decrypt-mirror]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[decrypt-mirror]/@name", "##/devices/entry[device-group/entry/devices/entry]/template/entry/config/devices/entry/network/interface/ethernet/entry[decrypt-mirror]/@name", "##/devices/entry[device-group/entry/devices/entry]/template/entry/config/devices/entry/network/interface/aggregate-ethernet/entry[decrypt-mirror]/@name"]}, "forwarded-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"mirror after security policy allow"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end # decrypt mirror port def interface prop_get('interface') end # decrypt mirror port def interface=(val) prop_set('interface', val) end # mirror after security policy allow def forwarded_only prop_get('forwarded-only') end # mirror after security policy allow def forwarded_only=(val) prop_set('forwarded-only', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decryption def decryption if @create_children @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) else Decryption.new(parent_instance: self) end end class Forwarding < XML::ConfigClass def has_multiple_values? true end def _section :'forwarding' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Transparent < ConfigClass def has_multiple_values? false end def _section :'transparent' end @props={"enable-ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6"}} # Enable IPv6 def enable_ipv6 prop_get('enable-ipv6') end # Enable IPv6 def enable_ipv6=(val) prop_set('enable-ipv6', val) end end # class Transparent def transparent @subclasses['transparent'] ||= Transparent.new(parent_instance: self, create_children: @create_children) end class Routed < ConfigClass def has_multiple_values? false end def _section :'routed' end class SecurityChain < XML::ConfigClass def has_multiple_values? true end def _section :'security-chain' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "first-device"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "ipv4-only"=>"yes"}, "first-device-description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31"}, "last-device"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "ipv4-only"=>"yes"}, "last-device-description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def first_device prop_get('first-device') end def first_device=(val) prop_set('first-device', val) end def first_device_description prop_get('first-device-description') end def first_device_description=(val) prop_set('first-device-description', val) end def last_device prop_get('last-device') end def last_device=(val) prop_set('last-device', val) end def last_device_description prop_get('last-device-description') end def last_device_description=(val) prop_set('last-device-description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SecurityChain def security_chain if @create_children @subclasses['security-chain'] ||= SecurityChain.new(parent_instance: self, create_children: @create_children) else SecurityChain.new(parent_instance: self) end end @props={"distribution"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"round-robin", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"lowest-latency", "help-string"=>"Lowest Latency"}]}} def distribution prop_get('distribution') end def distribution=(val) prop_set('distribution', val) end end # class Routed def routed @subclasses['routed'] ||= Routed.new(parent_instance: self, create_children: @create_children) end class HealthCheck < ConfigClass def has_multiple_values? false end def _section :'health-check' end @props={"failure-action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"bypass", "enum"=> [{"value"=>"bypass", "help-string"=>"Bypass Security Chain"}, {"value"=>"block", "help-string"=>"Block Session"}]}, "failure-condition"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"any", "enum"=> [{"value"=>"any", "help-string"=>"OR condition"}, {"value"=>"all", "help-string"=>"AND condition"}]}, "path-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "path-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"3"}, "path-interval-s"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3"}, "path-recovery-hold-s"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"30"}, "http-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "http-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"3"}, "http-interval-s"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3"}, "http-latency-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "http-latency-maximum-ms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"65535", "default"=>"500"}, "http-latency-duration-s"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"60"}, "http-latency-log-exceeded"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def failure_action prop_get('failure-action') end def failure_action=(val) prop_set('failure-action', val) end def failure_condition prop_get('failure-condition') end def failure_condition=(val) prop_set('failure-condition', val) end def path_enable prop_get('path-enable') end def path_enable=(val) prop_set('path-enable', val) end def path_count prop_get('path-count') end def path_count=(val) prop_set('path-count', val) end def path_interval_s prop_get('path-interval-s') end def path_interval_s=(val) prop_set('path-interval-s', val) end def path_recovery_hold_s prop_get('path-recovery-hold-s') end def path_recovery_hold_s=(val) prop_set('path-recovery-hold-s', val) end def http_enable prop_get('http-enable') end def http_enable=(val) prop_set('http-enable', val) end def http_count prop_get('http-count') end def http_count=(val) prop_set('http-count', val) end def http_interval_s prop_get('http-interval-s') end def http_interval_s=(val) prop_set('http-interval-s', val) end def http_latency_enable prop_get('http-latency-enable') end def http_latency_enable=(val) prop_set('http-latency-enable', val) end def http_latency_maximum_ms prop_get('http-latency-maximum-ms') end def http_latency_maximum_ms=(val) prop_set('http-latency-maximum-ms', val) end def http_latency_duration_s prop_get('http-latency-duration-s') end def http_latency_duration_s=(val) prop_set('http-latency-duration-s', val) end def http_latency_log_exceeded prop_get('http-latency-log-exceeded') end def http_latency_log_exceeded=(val) prop_set('http-latency-log-exceeded', val) end end # class HealthCheck def health_check @subclasses['health-check'] ||= HealthCheck.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "interface-primary"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"primary interface", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3/decrypt-forward = 'yes']/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[decrypt-forward = 'yes']/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3/decrypt-forward = 'yes']/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[decrypt-forward = 'yes']/@name"]}, "interface-secondary"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"secondary interface", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3/decrypt-forward = 'yes']/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[decrypt-forward = 'yes']/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3/decrypt-forward = 'yes']/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[decrypt-forward = 'yes']/@name"]}, "flow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"bidirectional", "enum"=> [{"value"=>"unidirectional", "help-string"=>"all packets egressed from primary interface"}, {"value"=>"bidirectional", "help-string"=>"server packets egressed from secondary interface"}]}} def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # primary interface def interface_primary prop_get('interface-primary') end # primary interface def interface_primary=(val) prop_set('interface-primary', val) end # secondary interface def interface_secondary prop_get('interface-secondary') end # secondary interface def interface_secondary=(val) prop_set('interface-secondary', val) end def flow prop_get('flow') end def flow=(val) prop_set('flow', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Forwarding def forwarding if @create_children @subclasses['forwarding'] ||= Forwarding.new(parent_instance: self, create_children: @create_children) else Forwarding.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class ProfileGroup < XML::ConfigClass def has_multiple_values? true end def _section :'profile-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name", "#dg-hier/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name", "#dg-hier/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name", "#dg-hier/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "hidden"=>"yes", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/gtp/entry/@name", "#dg-hier/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "hidden"=>"yes", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name", "#dg-hier/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name", "#dg-hier/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name", "#dg-hier/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name", "#dg-hier/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name", "#dg-hier/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProfileGroup def profile_group if @create_children @subclasses['profile-group'] ||= ProfileGroup.new(parent_instance: self, create_children: @create_children) else ProfileGroup.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"tcp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "halfclose-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session half-close timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "timewait-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session time-wait timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600"}} # tcp session timeout value (in second) def timeout prop_get('timeout') end # tcp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end # tcp session half-close timeout value (in second) def halfclose_timeout prop_get('halfclose-timeout') end # tcp session half-close timeout value (in second) def halfclose_timeout=(val) prop_set('halfclose-timeout', val) end # tcp session time-wait timeout value (in second) def timewait_timeout prop_get('timewait-timeout') end # tcp session time-wait timeout value (in second) def timewait_timeout=(val) prop_set('timewait-timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"udp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "default"=>"30"}} # udp session timeout value (in second) def timeout prop_get('timeout') end # udp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class ServiceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'service-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServiceGroup def service_group if @create_children @subclasses['service-group'] ||= ServiceGroup.new(parent_instance: self, create_children: @create_children) else ServiceGroup.new(parent_instance: self) end end class Schedule < XML::ConfigClass def has_multiple_values? true end def _section :'schedule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScheduleType < XML::ConfigClass def has_multiple_values? true end def _section :'schedule-type' end class Recurring < XML::ConfigClass def has_multiple_values? true end def _section :'recurring' end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end class Sunday < XML::ConfigClass def has_multiple_values? true end def _section :'sunday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Sunday def sunday if @create_children @subclasses['sunday'] ||= Sunday.new(parent_instance: self, create_children: @create_children) else Sunday.new(parent_instance: self) end end class Monday < XML::ConfigClass def has_multiple_values? true end def _section :'monday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Monday def monday if @create_children @subclasses['monday'] ||= Monday.new(parent_instance: self, create_children: @create_children) else Monday.new(parent_instance: self) end end class Tuesday < XML::ConfigClass def has_multiple_values? true end def _section :'tuesday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Tuesday def tuesday if @create_children @subclasses['tuesday'] ||= Tuesday.new(parent_instance: self, create_children: @create_children) else Tuesday.new(parent_instance: self) end end class Wednesday < XML::ConfigClass def has_multiple_values? true end def _section :'wednesday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Wednesday def wednesday if @create_children @subclasses['wednesday'] ||= Wednesday.new(parent_instance: self, create_children: @create_children) else Wednesday.new(parent_instance: self) end end class Thursday < XML::ConfigClass def has_multiple_values? true end def _section :'thursday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Thursday def thursday if @create_children @subclasses['thursday'] ||= Thursday.new(parent_instance: self, create_children: @create_children) else Thursday.new(parent_instance: self) end end class Friday < XML::ConfigClass def has_multiple_values? true end def _section :'friday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Friday def friday if @create_children @subclasses['friday'] ||= Friday.new(parent_instance: self, create_children: @create_children) else Friday.new(parent_instance: self) end end class Saturday < XML::ConfigClass def has_multiple_values? true end def _section :'saturday' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Saturday def saturday if @create_children @subclasses['saturday'] ||= Saturday.new(parent_instance: self, create_children: @create_children) else Saturday.new(parent_instance: self) end end @props={} end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Daily < XML::ConfigClass def has_multiple_values? true end def _section :'daily' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=> "([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"11", "maxlen"=>"11", "help-string"=>"Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)"}} # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member prop_get('member') end # Time range specification hh:mm-hh:mm (e.g. 10:00-23:59) def member=(val) prop_set('member', val) end end # class Daily def daily if @create_children @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) else Daily.new(parent_instance: self) end end @props={} end # class Recurring def recurring if @create_children @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) else Recurring.new(parent_instance: self) end end class NonRecurring < XML::ConfigClass def has_multiple_values? true end def _section :'non-recurring' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59)", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9])-[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"33", "maxlen"=>"33"}} # Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59) def member prop_get('member') end # Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59) def member=(val) prop_set('member', val) end end # class NonRecurring def non_recurring if @create_children @subclasses['non-recurring'] ||= NonRecurring.new(parent_instance: self, create_children: @create_children) else NonRecurring.new(parent_instance: self) end end @props={} end # class ScheduleType def schedule_type if @create_children @subclasses['schedule-type'] ||= ScheduleType.new(parent_instance: self, create_children: @create_children) else ScheduleType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Schedule def schedule if @create_children @subclasses['schedule'] ||= Schedule.new(parent_instance: self, create_children: @create_children) else Schedule.new(parent_instance: self) end end class ApplicationStatus < XML::ConfigClass def has_multiple_values? true end def _section :'application-status' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name", "##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "@status"=> {"node-type"=>"attr-req", "type"=>"enum", "enum"=>[{"value"=>"enabled"}, {"value"=>"disabled"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def status prop_get('@status') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationStatus def application_status if @create_children @subclasses['application-status'] ||= ApplicationStatus.new(parent_instance: self, create_children: @create_children) else ApplicationStatus.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Default < XML::ConfigClass def has_multiple_values? true end def _section :'default' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic)"}} # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member prop_get('member') end # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member=(val) prop_set('member', val) end end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class IdentByIcmpType < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmpType def ident_by_icmp_type @subclasses['ident-by-icmp-type'] ||= IdentByIcmpType.new(parent_instance: self, create_children: @create_children) end class IdentByIcmp6Type < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp6-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmp6Type def ident_by_icmp6_type @subclasses['ident-by-icmp6-type'] ||= IdentByIcmp6Type.new(parent_instance: self, create_children: @create_children) end @props={"ident-by-ip-protocol"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def ident_by_ip_protocol prop_get('ident-by-ip-protocol') end def ident_by_ip_protocol=(val) prop_set('ident-by-ip-protocol', val) end end # class Default def default if @create_children @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) else Default.new(parent_instance: self) end end class Signature < XML::ConfigClass def has_multiple_values? true end def _section :'signature' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AndCondition < XML::ConfigClass def has_multiple_values? true end def _section :'and-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OrCondition < XML::ConfigClass def has_multiple_values? true end def _section :'or-condition' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Operator < XML::ConfigClass def has_multiple_values? true end def _section :'operator' end class PatternMatch < ConfigClass def has_multiple_values? false end def _section :'pattern-match' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/pattern/entry/@name[.!='tcp-context-free' and .!='udp-context-free']"]}, "pattern"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def pattern prop_get('pattern') end def pattern=(val) prop_set('pattern', val) end end # class PatternMatch def pattern_match @subclasses['pattern-match'] ||= PatternMatch.new(parent_instance: self, create_children: @create_children) end class GreaterThan < ConfigClass def has_multiple_values? false end def _section :'greater-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/appid-decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class GreaterThan def greater_than @subclasses['greater-than'] ||= GreaterThan.new(parent_instance: self, create_children: @create_children) end class LessThan < ConfigClass def has_multiple_values? false end def _section :'less-than' end class Qualifier < XML::ConfigClass def has_multiple_values? true end def _section :'qualifier' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/value/entry[@name='$context']/qualifier/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"127"}, "string"=>{"content-dependent"=>"yes"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Qualifier def qualifier if @create_children @subclasses['qualifier'] ||= Qualifier.new(parent_instance: self, create_children: @create_children) else Qualifier.new(parent_instance: self) end end @props={"context"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/appid-decoder-fields/fields/value/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class LessThan def less_than @subclasses['less-than'] ||= LessThan.new(parent_instance: self, create_children: @create_children) end class EqualTo < ConfigClass def has_multiple_values? false end def _section :'equal-to' end @props={"context"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["##/predefined/appid-decoder-fields/fields/value/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=> [{"value"=>"unknown-req-tcp"}, {"value"=>"unknown-rsp-tcp"}, {"value"=>"unknown-req-udp"}, {"value"=>"unknown-rsp-udp"}]}}, "position"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/decoder-fields/fields/app-unknown-positions/entry/@name"]}, "mask"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[0][xX][0-9A-Fa-f]{8}$", "maxlen"=>"10", "help-string"=>"4-byte hex value", "optional"=>"yes"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"10"}} def context prop_get('context') end def context=(val) prop_set('context', val) end def position prop_get('position') end def position=(val) prop_set('position', val) end # 4-byte hex value def mask prop_get('mask') end # 4-byte hex value def mask=(val) prop_set('mask', val) end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class EqualTo def equal_to @subclasses['equal-to'] ||= EqualTo.new(parent_instance: self, create_children: @create_children) end @props={} end # class Operator def operator if @create_children @subclasses['operator'] ||= Operator.new(parent_instance: self, create_children: @create_children) else Operator.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OrCondition def or_condition if @create_children @subclasses['or-condition'] ||= OrCondition.new(parent_instance: self, create_children: @create_children) else OrCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AndCondition def and_condition if @create_children @subclasses['and-condition'] ||= AndCondition.new(parent_instance: self, create_children: @create_children) else AndCondition.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"256"}, "scope"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"protocol-data-unit", "enum"=> [{"value"=>"protocol-data-unit", "help-string"=>"transaction"}, {"value"=>"session"}]}, "order-free"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def scope prop_get('scope') end def scope=(val) prop_set('scope', val) end def order_free prop_get('order-free') end def order_free=(val) prop_set('order-free', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Signature def signature if @create_children @subclasses['signature'] ||= Signature.new(parent_instance: self, create_children: @create_children) else Signature.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "category"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}, "subcategory"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry[@name='$category']/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry[@name='$category']/subcategory/entry/@name"]}, "technology"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "udp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-half-closed-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout for half-close session in seconds"}, "tcp-time-wait-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "help-string"=>"timeout for session in time_wait state in seconds"}, "risk"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}, "evasive-behavior"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "consume-big-bandwidth"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "used-by-malware"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "able-to-transfer-file"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "has-known-vulnerability"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-other-application"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-applications"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "pervasive-use"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "file-type-ident"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "virus-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "data-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "no-appid-caching"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "alg-disable-capability"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "parent-app"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name|#config/predefined/application-container/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def subcategory prop_get('subcategory') end def subcategory=(val) prop_set('subcategory', val) end def technology prop_get('technology') end def technology=(val) prop_set('technology', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # timeout in seconds def timeout prop_get('timeout') end # timeout in seconds def timeout=(val) prop_set('timeout', val) end # timeout in seconds def tcp_timeout prop_get('tcp-timeout') end # timeout in seconds def tcp_timeout=(val) prop_set('tcp-timeout', val) end # timeout in seconds def udp_timeout prop_get('udp-timeout') end # timeout in seconds def udp_timeout=(val) prop_set('udp-timeout', val) end # timeout for half-close session in seconds def tcp_half_closed_timeout prop_get('tcp-half-closed-timeout') end # timeout for half-close session in seconds def tcp_half_closed_timeout=(val) prop_set('tcp-half-closed-timeout', val) end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout prop_get('tcp-time-wait-timeout') end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout=(val) prop_set('tcp-time-wait-timeout', val) end def risk prop_get('risk') end def risk=(val) prop_set('risk', val) end def evasive_behavior prop_get('evasive-behavior') end def evasive_behavior=(val) prop_set('evasive-behavior', val) end def consume_big_bandwidth prop_get('consume-big-bandwidth') end def consume_big_bandwidth=(val) prop_set('consume-big-bandwidth', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def able_to_transfer_file prop_get('able-to-transfer-file') end def able_to_transfer_file=(val) prop_set('able-to-transfer-file', val) end def has_known_vulnerability prop_get('has-known-vulnerability') end def has_known_vulnerability=(val) prop_set('has-known-vulnerability', val) end def tunnel_other_application prop_get('tunnel-other-application') end def tunnel_other_application=(val) prop_set('tunnel-other-application', val) end def tunnel_applications prop_get('tunnel-applications') end def tunnel_applications=(val) prop_set('tunnel-applications', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive_use prop_get('pervasive-use') end def pervasive_use=(val) prop_set('pervasive-use', val) end def file_type_ident prop_get('file-type-ident') end def file_type_ident=(val) prop_set('file-type-ident', val) end def virus_ident prop_get('virus-ident') end def virus_ident=(val) prop_set('virus-ident', val) end def data_ident prop_get('data-ident') end def data_ident=(val) prop_set('data-ident', val) end def no_appid_caching prop_get('no-appid-caching') end def no_appid_caching=(val) prop_set('no-appid-caching', val) end def alg_disable_capability prop_get('alg-disable-capability') end def alg_disable_capability=(val) prop_set('alg-disable-capability', val) end def parent_app prop_get('parent-app') end def parent_app=(val) prop_set('parent-app', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ApplicationTag < XML::ConfigClass def has_multiple_values? true end def _section :'application-tag' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "max-count"=>"64", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name|##/predefined/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application/entry/@name"]}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationTag def application_tag if @create_children @subclasses['application-tag'] ||= ApplicationTag.new(parent_instance: self, create_children: @create_children) else ApplicationTag.new(parent_instance: self) end end class ApplicationFilter < XML::ConfigClass def has_multiple_values? true end def _section :'application-filter' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Subcategory < XML::ConfigClass def has_multiple_values? true end def _section :'subcategory' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry/subcategory/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Subcategory def subcategory if @create_children @subclasses['subcategory'] ||= Subcategory.new(parent_instance: self, create_children: @create_children) else Subcategory.new(parent_instance: self) end end class Technology < XML::ConfigClass def has_multiple_values? true end def _section :'technology' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Technology def technology if @create_children @subclasses['technology'] ||= Technology.new(parent_instance: self, create_children: @create_children) else Technology.new(parent_instance: self) end end class Risk < XML::ConfigClass def has_multiple_values? true end def _section :'risk' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Risk def risk if @create_children @subclasses['risk'] ||= Risk.new(parent_instance: self, create_children: @create_children) else Risk.new(parent_instance: self) end end class SaasCertifications < XML::ConfigClass def has_multiple_values? true end def _section :'saas-certifications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"32", "autocomplete"=>"yes", "memberof"=> ["##/predefined/appid-saas-risk-fields/certifications/entry/@name", "##/predefined/appid-saas-risk-fields/certifications/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SaasCertifications def saas_certifications if @create_children @subclasses['saas-certifications'] ||= SaasCertifications.new(parent_instance: self, create_children: @create_children) else SaasCertifications.new(parent_instance: self) end end class SaasRisk < XML::ConfigClass def has_multiple_values? true end def _section :'saas-risk' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"32", "autocomplete"=>"yes", "memberof"=>["##/predefined/appid-saas-risk-fields/others/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SaasRisk def saas_risk if @create_children @subclasses['saas-risk'] ||= SaasRisk.new(parent_instance: self, create_children: @create_children) else SaasRisk.new(parent_instance: self) end end class Tagging < XML::ConfigClass def has_multiple_values? true end def _section :'tagging' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/app-tag/entry/display", "#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"no-tag"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}} def no_tag prop_get('no-tag') end def no_tag=(val) prop_set('no-tag', val) end end # class Tagging def tagging if @create_children @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) else Tagging.new(parent_instance: self) end end class Exclude < XML::ConfigClass def has_multiple_values? true end def _section :'exclude' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "#config/shared/application/entry/@name|#config/shared/content-preview/application/entry/@name", "#dg-hier/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Exclude def exclude if @create_children @subclasses['exclude'] ||= Exclude.new(parent_instance: self, create_children: @create_children) else Exclude.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "evasive"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "excessive-bandwidth-use"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "used-by-malware"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "transfers-files"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "has-known-vulnerabilities"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "tunnels-other-apps"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "pervasive"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "is-saas"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}, "new-appid"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"yes"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def evasive prop_get('evasive') end def evasive=(val) prop_set('evasive', val) end def excessive_bandwidth_use prop_get('excessive-bandwidth-use') end def excessive_bandwidth_use=(val) prop_set('excessive-bandwidth-use', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def transfers_files prop_get('transfers-files') end def transfers_files=(val) prop_set('transfers-files', val) end def has_known_vulnerabilities prop_get('has-known-vulnerabilities') end def has_known_vulnerabilities=(val) prop_set('has-known-vulnerabilities', val) end def tunnels_other_apps prop_get('tunnels-other-apps') end def tunnels_other_apps=(val) prop_set('tunnels-other-apps', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive prop_get('pervasive') end def pervasive=(val) prop_set('pervasive', val) end def is_saas prop_get('is-saas') end def is_saas=(val) prop_set('is-saas', val) end def new_appid prop_get('new-appid') end def new_appid=(val) prop_set('new-appid', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationFilter def application_filter if @create_children @subclasses['application-filter'] ||= ApplicationFilter.new(parent_instance: self, create_children: @create_children) else ApplicationFilter.new(parent_instance: self) end end class ApplicationGroup < XML::ConfigClass def has_multiple_values? true end def _section :'application-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name|#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ApplicationGroup def application_group if @create_children @subclasses['application-group'] ||= ApplicationGroup.new(parent_instance: self, create_children: @create_children) else ApplicationGroup.new(parent_instance: self) end end class Region < XML::ConfigClass def has_multiple_values? true end def _section :'region' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "type"=>"float", "min"=>"-90.0", "max"=>"90.0", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "type"=>"float", "min"=>"-180.0", "max"=>"180.0", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>[]}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Region def region if @create_children @subclasses['region'] ||= Region.new(parent_instance: self, create_children: @create_children) else Region.new(parent_instance: self) end end class ExternalList < XML::ConfigClass def has_multiple_values? true end def _section :'external-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class PredefinedIp < ConfigClass def has_multiple_values? false end def _section :'predefined-ip' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "uiHint-fieldLabel"=>"Source", "autocomplete"=>"yes", "memberof"=>["##/predefined/ip-block-list-v2/entry/@name"]}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end end # class PredefinedIp def predefined_ip @subclasses['predefined-ip'] ||= PredefinedIp.new(parent_instance: self, create_children: @create_children) end class PredefinedUrl < ConfigClass def has_multiple_values? false end def _section :'predefined-url' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "uiHint-fieldLabel"=>"Source", "autocomplete"=>"yes", "memberof"=>["##/predefined/url-predefined/entry/@name"]}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end end # class PredefinedUrl def predefined_url @subclasses['predefined-url'] ||= PredefinedUrl.new(parent_instance: self, create_children: @create_children) end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=>["#mytemplates/#dg-hier/certificate-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Domain < ConfigClass def has_multiple_values? false end def _section :'domain' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=>["#mytemplates/#dg-hier/certificate-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}, "expand-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable/Disable expand domain"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Enable/Disable expand domain def expand_domain prop_get('expand-domain') end # Enable/Disable expand domain def expand_domain=(val) prop_set('expand-domain', val) end end # class Domain def domain @subclasses['domain'] ||= Domain.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=>["#mytemplates/#dg-hier/certificate-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Imsi < ConfigClass def has_multiple_values? false end def _section :'imsi' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"34", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=>["#mytemplates/#dg-hier/certificate-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Imsi def imsi @subclasses['imsi'] ||= Imsi.new(parent_instance: self, create_children: @create_children) end class Imei < ConfigClass def has_multiple_values? false end def _section :'imei' end class ExceptionList < XML::ConfigClass def has_multiple_values? true end def _section :'exception-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"32", "max-count"=>"100"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExceptionList def exception_list if @create_children @subclasses['exception-list'] ||= ExceptionList.new(parent_instance: self, create_children: @create_children) else ExceptionList.new(parent_instance: self) end end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end @props={"username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255"}} def username prop_get('username') end def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class FiveMinute < ConfigClass def has_multiple_values? false end def _section :'five-minute' end @props={} end # class FiveMinute def five_minute @subclasses['five-minute'] ||= FiveMinute.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={} end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end class Monthly < ConfigClass def has_multiple_values? false end def _section :'monthly' end @props={"day-of-month"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31"}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3])", "default"=>"00", "minlen"=>"2", "maxlen"=>"2", "help-string"=>"Time specification hh (e.g. 20)"}} def day_of_month prop_get('day-of-month') end def day_of_month=(val) prop_set('day-of-month', val) end # Time specification hh (e.g. 20) def at prop_get('at') end # Time specification hh (e.g. 20) def at=(val) prop_set('at', val) end end # class Monthly def monthly @subclasses['monthly'] ||= Monthly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={"description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "ui-hint"=>"\"xtype\": \"pan-textarea\""}, "url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "uiHint-fieldLabel"=>"Source", "default"=>"http://"}, "certificate-profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=>["#mytemplates/#dg-hier/certificate-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable Cert profile"}]}}} def description prop_get('description') end def description=(val) prop_set('description', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Imei def imei @subclasses['imei'] ||= Imei.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExternalList def external_list if @create_children @subclasses['external-list'] ||= ExternalList.new(parent_instance: self, create_children: @create_children) else ExternalList.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color19"}, {"value"=>"color20"}, {"value"=>"color21"}, {"value"=>"color22"}, {"value"=>"color23"}, {"value"=>"color24"}, {"value"=>"color25"}, {"value"=>"color26"}, {"value"=>"color27"}, {"value"=>"color28"}, {"value"=>"color29"}, {"value"=>"color30"}, {"value"=>"color31"}, {"value"=>"color32"}, {"value"=>"color33"}, {"value"=>"color34"}, {"value"=>"color35"}, {"value"=>"color36"}, {"value"=>"color37"}, {"value"=>"color38"}, {"value"=>"color39"}, {"value"=>"color40"}, {"value"=>"color41"}, {"value"=>"color42"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def color prop_get('color') end def color=(val) prop_set('color', val) end def comments prop_get('comments') end def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class AuthenticationObject < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-object' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"object name"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}, "authentication-method"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no-captive-portal", "enum"=> [{"value"=>"web-form"}, {"value"=>"no-captive-portal"}, {"value"=>"browser-challenge"}]}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "loose-membership"=>"yes", "help-string"=>"Authentication profile to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name", "#mytemplates/#dg-hier/authentication-profile/entry/@name", "#mytemplates/#dg-hier/authentication-sequence/entry/@name"]}, "message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "default"=> "This is a customizable authentication message shown to the user to allow customers to provide authentication instructions based on the authentication rule in effect", "help-string"=>"Customizable message"}} # object name def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def authentication_method prop_get('authentication-method') end def authentication_method=(val) prop_set('authentication-method', val) end # Authentication profile to use for authentication. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for authentication. def authentication_profile=(val) prop_set('authentication-profile', val) end # Customizable message def message prop_get('message') end # Customizable message def message=(val) prop_set('message', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationObject def authentication_object if @create_children @subclasses['authentication-object'] ||= AuthenticationObject.new(parent_instance: self, create_children: @create_children) else AuthenticationObject.new(parent_instance: self) end end class PreRulebase < ConfigClass def has_multiple_values? false end def _section :'pre-rulebase' end class Security < ConfigClass def has_multiple_values? false end def _section :'security' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"application-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceImsi < XML::ConfigClass def has_multiple_values? true end def _section :'source-imsi' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imsi]/@name"], "multi-types"=> {"imsi"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMSI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImsi def source_imsi if @create_children @subclasses['source-imsi'] ||= SourceImsi.new(parent_instance: self, create_children: @create_children) else SourceImsi.new(parent_instance: self) end end class SourceImei < XML::ConfigClass def has_multiple_values? true end def _section :'source-imei' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/external-list/entry[type/imei]/@name"], "multi-types"=> {"imei"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMEI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImei def source_imei if @create_children @subclasses['source-imei'] ||= SourceImei.new(parent_instance: self, create_children: @create_children) else SourceImei.new(parent_instance: self) end end class SourceNwSlice < XML::ConfigClass def has_multiple_values? true end def _section :'source-nw-slice' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"nssai"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any NSSAI ST value"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceNwSlice def source_nw_slice if @create_children @subclasses['source-nw-slice'] ||= SourceNwSlice.new(parent_instance: self, create_children: @create_children) else SourceNwSlice.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"any", "help-string"=>"any device"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end @props={"disable-server-response-inspection"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable inspection of server side traffic"}} # Disable inspection of server side traffic def disable_server_response_inspection prop_get('disable-server-response-inspection') end # Disable inspection of server side traffic def disable_server_response_inspection=(val) prop_set('disable-server-response-inspection', val) end end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class ProfileSetting < XML::ConfigClass def has_multiple_values? true end def _section :'profile-setting' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name", "#dg-hier/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name", "#dg-hier/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name", "#dg-hier/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"47", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name", "#dg-hier/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name", "#dg-hier/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name", "#dg-hier/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name", "#dg-hier/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/gtp/entry/@name", "#dg-hier/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name", "#dg-hier/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Group < XML::ConfigClass def has_multiple_values? true end def _section :'group' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profile-group/entry/@name", "#config/shared/profile-group/entry/@name", "#dg-hier/profile-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Group def group if @create_children @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) else Group.new(parent_instance: self) end end @props={} end # class ProfileSetting def profile_setting if @create_children @subclasses['profile-setting'] ||= ProfileSetting.new(parent_instance: self, create_children: @create_children) else ProfileSetting.new(parent_instance: self) end end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Marking < XML::ConfigClass def has_multiple_values? true end def _section :'marking' end class FollowC2sFlow < ConfigClass def has_multiple_values? false end def _section :'follow-c2s-flow' end @props={} end # class FollowC2sFlow def follow_c2s_flow @subclasses['follow-c2s-flow'] ||= FollowC2sFlow.new(parent_instance: self, create_children: @create_children) end @props={"ip-dscp"=> {"node-type"=>"element", "help-string"=>"IP DSCP", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){6}$", "help-string"=> "specify codepoint in format of 'xxxxxx' where x is {0|1}"}, "enum"=> [{"value"=>"ef", "help-string"=>"codepoint 101110, expedited forwarding"}, {"value"=>"af11", "help-string"=>"codepoint 001010"}, {"value"=>"af12", "help-string"=>"codepoint 001100"}, {"value"=>"af13", "help-string"=>"codepoint 001110"}, {"value"=>"af21", "help-string"=>"codepoint 010010"}, {"value"=>"af22", "help-string"=>"codepoint 010100"}, {"value"=>"af23", "help-string"=>"codepoint 010110"}, {"value"=>"af31", "help-string"=>"codepoint 011010"}, {"value"=>"af32", "help-string"=>"codepoint 011100"}, {"value"=>"af33", "help-string"=>"codepoint 011110"}, {"value"=>"af41", "help-string"=>"codepoint 100010"}, {"value"=>"af42", "help-string"=>"codepoint 100100"}, {"value"=>"af43", "help-string"=>"codepoint 100110"}, {"value"=>"cs0", "help-string"=>"codepoint 000000"}, {"value"=>"cs1", "help-string"=>"codepoint 001000"}, {"value"=>"cs2", "help-string"=>"codepoint 010000"}, {"value"=>"cs3", "help-string"=>"codepoint 011000"}, {"value"=>"cs4", "help-string"=>"codepoint 100000"}, {"value"=>"cs5", "help-string"=>"codepoint 101000"}, {"value"=>"cs6", "help-string"=>"codepoint 110000"}, {"value"=>"cs7", "help-string"=>"codepoint 111000"}]}}, "ip-precedence"=> {"node-type"=>"element", "help-string"=>"IP Precedence", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){3}$", "help-string"=>"specify codepoint in format of 'xxx'"}, "enum"=> [{"value"=>"cs0", "help-string"=>"codepoint 000"}, {"value"=>"cs1", "help-string"=>"codepoint 001"}, {"value"=>"cs2", "help-string"=>"codepoint 010"}, {"value"=>"cs3", "help-string"=>"codepoint 011"}, {"value"=>"cs4", "help-string"=>"codepoint 100"}, {"value"=>"cs5", "help-string"=>"codepoint 101"}, {"value"=>"cs6", "help-string"=>"codepoint 110"}, {"value"=>"cs7", "help-string"=>"codepoint 111"}]}}} # IP DSCP def ip_dscp prop_get('ip-dscp') end # IP DSCP def ip_dscp=(val) prop_set('ip-dscp', val) end # IP Precedence def ip_precedence prop_get('ip-precedence') end # IP Precedence def ip_precedence=(val) prop_set('ip-precedence', val) end end # class Marking def marking if @create_children @subclasses['marking'] ||= Marking.new(parent_instance: self, create_children: @create_children) else Marking.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=> [{"value"=>"deny", "help-string"=>"Deny", "show-help-tip"=>"block, use App Deny action"}, {"value"=>"allow", "help-string"=>"Allow"}, {"value"=>"drop", "help-string"=>"Drop", "show-help-tip"=>"silent drop, send optional ICMP Unreachable"}, {"value"=>"reset-client", "help-string"=>"Reset client"}, {"value"=>"reset-server", "help-string"=>"Reset server"}, {"value"=>"reset-both", "help-string"=>"Reset both client and server"}]}, "icmp-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Send ICMP unreachable error when action is drop or reset"}, "rule-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"universal", "optional"=>"yes", "enum"=> [{"value"=>"universal", "help-string"=>"default", "show-help-tip"=>"Applies to both interzone and intrazone traffic."}, {"value"=>"intrazone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Only applies to traffic within one of the specified zones."}, {"value"=>"interzone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Applies to traffic from any source zone to any destination zone. It does not apply to traffic within a zone, even if the same zone is in source and destination columns."}]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable prop_get('icmp-unreachable') end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable=(val) prop_set('icmp-unreachable', val) end def rule_type prop_get('rule-type') end def rule_type=(val) prop_set('rule-type', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Security def security @subclasses['security'] ||= Security.new(parent_instance: self, create_children: @create_children) end class ApplicationOverride < ConfigClass def has_multiple_values? false end def _section :'application-override' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"tcp", "enum"=> [{"value"=>"tcp", "help-string"=>"TCP"}, {"value"=>"udp", "help-string"=>"UDP"}]}, "port"=>{"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0"}, "application"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#dg-hier/application/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def application prop_get('application') end def application=(val) prop_set('application', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class ApplicationOverride def application_override @subclasses['application-override'] ||= ApplicationOverride.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class SslForwardProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-forward-proxy' end @props={} end # class SslForwardProxy def ssl_forward_proxy @subclasses['ssl-forward-proxy'] ||= SslForwardProxy.new(parent_instance: self, create_children: @create_children) end class SshProxy < ConfigClass def has_multiple_values? false end def _section :'ssh-proxy' end @props={} end # class SshProxy def ssh_proxy @subclasses['ssh-proxy'] ||= SshProxy.new(parent_instance: self, create_children: @create_children) end @props={"ssl-inbound-inspection"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"31", "help-string"=>"SSL Inbound Inspection", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name", "#config/shared/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name"]}} # SSL Inbound Inspection def ssl_inbound_inspection prop_get('ssl-inbound-inspection') end # SSL Inbound Inspection def ssl_inbound_inspection=(val) prop_set('ssl-inbound-inspection', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no-decrypt", "enum"=> [{"value"=>"no-decrypt"}, {"value"=>"decrypt"}, {"value"=>"decrypt-and-forward"}]}, "profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"decryption profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/decryption/entry/@name", "#config/shared/profiles/decryption/entry/@name", "#dg-hier/profiles/decryption/entry/@name"]}, "forwarding-profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"forwarding profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#dg-hier/profiles/forwarding/entry/@name"]}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # decryption profile def profile prop_get('profile') end # decryption profile def profile=(val) prop_set('profile', val) end # forwarding profile def forwarding_profile prop_get('forwarding-profile') end # forwarding profile def forwarding_profile=(val) prop_set('forwarding-profile', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"service-http", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "authentication-enforcement"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "Authentication enforcement object to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-object/entry/@name", "#config/shared/authentication-object/entry/@name", "##/predefined/authentication-object/entry/@name", "#dg-hier/authentication-object/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding authentication logs", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/profiles/entry/@name", "#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"60", "help-string"=>"expiration timer (minutes)"}, "log-authentication-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Authentication enforcement object to use for authentication. def authentication_enforcement prop_get('authentication-enforcement') end # Authentication enforcement object to use for authentication. def authentication_enforcement=(val) prop_set('authentication-enforcement', val) end # Log setting for forwarding authentication logs def log_setting prop_get('log-setting') end # Log setting for forwarding authentication logs def log_setting=(val) prop_set('log-setting', val) end # expiration timer (minutes) def timeout prop_get('timeout') end # expiration timer (minutes) def timeout=(val) prop_set('timeout', val) end def log_authentication_timeout prop_get('log-authentication-timeout') end def log_authentication_timeout=(val) prop_set('log-authentication-timeout', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class DscpTos < XML::ConfigClass def has_multiple_values? true end def _section :'dscp-tos' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Codepoints < XML::ConfigClass def has_multiple_values? true end def _section :'codepoints' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ef < ConfigClass def has_multiple_values? false end def _section :'ef' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"ef", "help-string"=>"101110"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Ef def ef @subclasses['ef'] ||= Ef.new(parent_instance: self, create_children: @create_children) end class Af < ConfigClass def has_multiple_values? false end def _section :'af' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"af11", "help-string"=>"af11 (001010)"}, {"value"=>"af12", "help-string"=>"af12 (001100)"}, {"value"=>"af13", "help-string"=>"af13 (001110)"}, {"value"=>"af21", "help-string"=>"af21 (010010)"}, {"value"=>"af22", "help-string"=>"af22 (010100)"}, {"value"=>"af23", "help-string"=>"af23 (010110)"}, {"value"=>"af31", "help-string"=>"af31 (011010)"}, {"value"=>"af32", "help-string"=>"af32 (011100)"}, {"value"=>"af33", "help-string"=>"af33 (011110)"}, {"value"=>"af41", "help-string"=>"af41 (100010)"}, {"value"=>"af42", "help-string"=>"af42 (100100)"}, {"value"=>"af43", "help-string"=>"af43 (100110)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Af def af @subclasses['af'] ||= Af.new(parent_instance: self, create_children: @create_children) end class Cs < ConfigClass def has_multiple_values? false end def _section :'cs' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001000)"}, {"value"=>"cs2", "help-string"=>"cs2 (010000)"}, {"value"=>"cs3", "help-string"=>"cs3 (011000)"}, {"value"=>"cs4", "help-string"=>"cs4 (100000)"}, {"value"=>"cs5", "help-string"=>"cs5 (101000)"}, {"value"=>"cs6", "help-string"=>"cs6 (110000)"}, {"value"=>"cs7", "help-string"=>"cs7 (111000)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Cs def cs @subclasses['cs'] ||= Cs.new(parent_instance: self, create_children: @create_children) end class Tos < ConfigClass def has_multiple_values? false end def _section :'tos' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001)"}, {"value"=>"cs2", "help-string"=>"cs2 (010)"}, {"value"=>"cs3", "help-string"=>"cs3 (011)"}, {"value"=>"cs4", "help-string"=>"cs4 (100)"}, {"value"=>"cs5", "help-string"=>"cs5 (101)"}, {"value"=>"cs6", "help-string"=>"cs6 (110)"}, {"value"=>"cs7", "help-string"=>"cs7 (111)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Tos def tos @subclasses['tos'] ||= Tos.new(parent_instance: self, create_children: @create_children) end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end class Codepoint < ConfigClass def has_multiple_values? false end def _section :'codepoint' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "value"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"codepoint in format 'xxxxxx' where x is {0|1}"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('name') end # alphanumeric string [ 0-9a-zA-Z._-] def name=(val) prop_set('name', val) end # codepoint in format 'xxxxxx' where x is {0|1} def value prop_get('value') end # codepoint in format 'xxxxxx' where x is {0|1} def value=(val) prop_set('value', val) end end # class Codepoint def codepoint @subclasses['codepoint'] ||= Codepoint.new(parent_instance: self, create_children: @create_children) end @props={} end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"codepoint name, alphanumeric string [ 0-9a-zA-Z._-]"}} # codepoint name, alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Codepoints def codepoints if @create_children @subclasses['codepoints'] ||= Codepoints.new(parent_instance: self, create_children: @create_children) else Codepoints.new(parent_instance: self) end end @props={} end # class DscpTos def dscp_tos if @create_children @subclasses['dscp-tos'] ||= DscpTos.new(parent_instance: self, create_children: @create_children) else DscpTos.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"class"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"assigned class", "enum"=> [{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}, {"value"=>"4"}, {"value"=>"5"}, {"value"=>"6"}, {"value"=>"7"}, {"value"=>"8"}]}} # assigned class def class prop_get('class') end # assigned class def class=(val) prop_set('class', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name", "#mytemplates/#dg-hier/zone/entry[network/virtual-wire]/@name", "#mytemplates/#dg-hier/zone/entry[network/external]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name", "#mytemplates/#dg-hier/zone/entry[network/virtual-wire]/@name", "#mytemplates/#dg-hier/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31", "disallow-keyword-any"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceTranslation < ConfigClass def has_multiple_values? false end def _section :'source-translation' end class DynamicIpAndPort < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip-and-port' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#mytemplates/#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.nat.rules.interface-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#mytemplates/#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIpAndPort def dynamic_ip_and_port @subclasses['dynamic-ip-and-port'] ||= DynamicIpAndPort.new(parent_instance: self, create_children: @create_children) end class DynamicIp < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#dg-hier/address/entry[not(fqdn)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class Fallback < ConfigClass def has_multiple_values? false end def _section :'fallback' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#dg-hier/address/entry[not(fqdn)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#mytemplates/#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#mytemplates/#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Fallback def fallback @subclasses['fallback'] ||= Fallback.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIp def dynamic_ip @subclasses['dynamic-ip'] ||= DynamicIp.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#dg-hier/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "bi-directional"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"no", "help-string"=> "allow reverse translation from translated address to original address", "enum"=> [{"value"=>"yes", "help-string"=>"Bi-directional rule"}, {"value"=>"no", "help-string"=>"Uni-directional rule"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end # allow reverse translation from translated address to original address def bi_directional prop_get('bi-directional') end # allow reverse translation from translated address to original address def bi_directional=(val) prop_set('bi-directional', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class SourceTranslation def source_translation @subclasses['source-translation'] ||= SourceTranslation.new(parent_instance: self, create_children: @create_children) end class DestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'destination-translation' end class DnsRewrite < ConfigClass def has_multiple_values? false end def _section :'dns-rewrite' end @props={"direction"=> {"node-type"=>"element", "type"=>"enum", "default"=>"reverse", "help-string"=>"Select direction to apply DNS rewrite", "enum"=> [{"value"=>"reverse", "help-string"=>"Reverse translation"}, {"value"=>"forward", "help-string"=>"Forward translation"}]}} # Select direction to apply DNS rewrite def direction prop_get('direction') end # Select direction to apply DNS rewrite def direction=(val) prop_set('direction', val) end end # class DnsRewrite def dns_rewrite @subclasses['dns-rewrite'] ||= DnsRewrite.new(parent_instance: self, create_children: @create_children) end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#dg-hier/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end end # class DestinationTranslation def destination_translation @subclasses['destination-translation'] ||= DestinationTranslation.new(parent_instance: self, create_children: @create_children) end class DynamicDestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'dynamic-destination-translation' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}, "distribution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"round-robin", "help-string"=>"Distribution algorithm for destination address pool", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"source-ip-hash", "help-string"=>"Source IP Hash"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"least-sessions", "help-string"=>"Least Sessions"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end # Distribution algorithm for destination address pool def distribution prop_get('distribution') end # Distribution algorithm for destination address pool def distribution=(val) prop_set('distribution', val) end end # class DynamicDestinationTranslation def dynamic_destination_translation @subclasses['dynamic-destination-translation'] ||= DynamicDestinationTranslation.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "service"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "#config/shared/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name", "string('any')"]}, "nat-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"type of nat", "enum"=> [{"value"=>"ipv4", "help-string"=>"ipv4 nat"}, {"value"=>"nat64", "help-string"=>"translator between ipv6 and ipv4"}, {"value"=>"nptv6", "help-string"=>"network prefix translator for ipv6"}]}, "to-interface"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"any", "type"=>"multiple", "help-string"=>"Egress interface from route lookup", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/to-interface", "#dg-hier/post-rulebase/*/rules/entry/to-interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any interface"}]}}, "active-active-device-binding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"primary", "help-string"=>"Rule is bound to Active-Primary device"}, {"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def service prop_get('service') end def service=(val) prop_set('service', val) end # type of nat def nat_type prop_get('nat-type') end # type of nat def nat_type=(val) prop_set('nat-type', val) end # Egress interface from route lookup def to_interface prop_get('to-interface') end # Egress interface from route lookup def to_interface=(val) prop_set('to-interface', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class Pbf < ConfigClass def has_multiple_values? false end def _section :'pbf' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name", "#mytemplates/#dg-hier/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/from/interface/member", "#dg-hier/post-rulebase/*/rules/entry/from/interface/member", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[not(cachable='no')]/@name", "#config/shared/content-preview/application/entry[not(cachable='no')]/@name", "#dg-hier/pre-rulebase/application-override/rules/entry/application", "#dg-hier/post-rulebase/application-override/rules/entry/application"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Forward < ConfigClass def has_multiple_values? false end def _section :'forward' end class Nexthop < ConfigClass def has_multiple_values? false end def _section :'nexthop' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#dg-hier/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[fqdn]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name", "#dg-hier/address/entry[fqdn]/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN name configuration def fqdn prop_get('fqdn') end # nexthop address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class Nexthop def nexthop @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Monitoring profile associated with this rule", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#mytemplates/#myentry(devices)/network/profiles/monitor-profile/entry/@name"]}, "disable-if-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable this rule if nexthop/monitor ip is unreachable"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Monitor IP address"}} # Monitoring profile associated with this rule def profile prop_get('profile') end # Monitoring profile associated with this rule def profile=(val) prop_set('profile', val) end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable prop_get('disable-if-unreachable') end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable=(val) prop_set('disable-if-unreachable', val) end # Monitor IP address def ip_address prop_get('ip-address') end # Monitor IP address def ip_address=(val) prop_set('ip-address', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end @props={"egress-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/egress-interface", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/egress-interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#mytemplates/#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} # Interface to route packet to def egress_interface prop_get('egress-interface') end # Interface to route packet to def egress_interface=(val) prop_set('egress-interface', val) end end # class Forward def forward @subclasses['forward'] ||= Forward.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end class NoPbf < ConfigClass def has_multiple_values? false end def _section :'no-pbf' end @props={} end # class NoPbf def no_pbf @subclasses['no-pbf'] ||= NoPbf.new(parent_instance: self, create_children: @create_children) end @props={"forward-to-vsys"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Virtual system/Shared gateway to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward-to-vsys", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward-to-vsys", "#mytemplates/#myentry(devices)/vsys/entry/@name", "#mytemplates/#myentry(devices)/network/shared-gateway/entry/@name"]}} # Virtual system/Shared gateway to route packet to def forward_to_vsys prop_get('forward-to-vsys') end # Virtual system/Shared gateway to route packet to def forward_to_vsys=(val) prop_set('forward-to-vsys', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end class EnforceSymmetricReturn < ConfigClass def has_multiple_values? false end def _section :'enforce-symmetric-return' end class NexthopAddressList < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop-address-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address"}} # IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NexthopAddressList def nexthop_address_list if @create_children @subclasses['nexthop-address-list'] ||= NexthopAddressList.new(parent_instance: self, create_children: @create_children) else NexthopAddressList.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable symmetric return"}} # Enable symmetric return def enabled prop_get('enabled') end # Enable symmetric return def enabled=(val) prop_set('enabled', val) end end # class EnforceSymmetricReturn def enforce_symmetric_return @subclasses['enforce-symmetric-return'] ||= EnforceSymmetricReturn.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "active-active-device-binding"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.pbf.rules.active-active-device-binding-disable=True", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Pbf def pbf @subclasses['pbf'] ||= Pbf.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"traffic-distribution-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan traffic distribution associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-traffic-distribution/entry/@name", "#config/shared/profiles/sdwan-traffic-distribution/entry/@name", "#dg-hier/profiles/sdwan-traffic-distribution/entry/@name"]}, "app-failover-for-nat-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"keep-existing-link", "help-string"=>"For NAT sessions, specify whether to move to a better path", "enum"=> [{"value"=>"keep-existing-link", "help-string"=>"Keep session on existing link"}, {"value"=>"failover-to-better-path", "help-string"=>"Allow session failover to better path"}]}} # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile prop_get('traffic-distribution-profile') end # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile=(val) prop_set('traffic-distribution-profile', val) end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions prop_get('app-failover-for-nat-sessions') end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions=(val) prop_set('app-failover-for-nat-sessions', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "path-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan path quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-path-quality/entry/@name", "#config/shared/profiles/sdwan-path-quality/entry/@name", "#dg-hier/profiles/sdwan-path-quality/entry/@name"]}, "saas-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan saas quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-saas-quality/entry/@name", "#config/shared/profiles/sdwan-saas-quality/entry/@name", "#dg-hier/profiles/sdwan-saas-quality/entry/@name"]}, "error-correction-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan error correction profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-error-correction/entry/@name", "#config/shared/profiles/sdwan-error-correction/entry/@name", "#dg-hier/profiles/sdwan-error-correction/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # attach sdwan path quality profile associated with this rule def path_quality_profile prop_get('path-quality-profile') end # attach sdwan path quality profile associated with this rule def path_quality_profile=(val) prop_set('path-quality-profile', val) end # attach sdwan saas quality profile associated with this rule def saas_quality_profile prop_get('saas-quality-profile') end # attach sdwan saas quality profile associated with this rule def saas_quality_profile=(val) prop_set('saas-quality-profile', val) end # attach sdwan error correction profile associated with this rule def error_correction_profile prop_get('error-correction-profile') end # attach sdwan error correction profile associated with this rule def error_correction_profile=(val) prop_set('error-correction-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end class Dos < ConfigClass def has_multiple_values? false end def _section :'dos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/from/interface/member", "#dg-hier/post-rulebase/*/rules/entry/from/interface/member", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class To < ConfigClass def has_multiple_values? false end def _section :'to' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#mytemplates/#dg-hier/zone/entry/@name", "string('multicast')"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"multicast", "help-string"=>"multicast zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/to/interface/member", "#dg-hier/post-rulebase/*/rules/entry/to/interface/member", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name", "#mytemplates/#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class To def to @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Protection < ConfigClass def has_multiple_values? false end def _section :'protection' end class Aggregate < ConfigClass def has_multiple_values? false end def _section :'aggregate' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for aggregated protection", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/profiles/dos-protection/entry[type='aggregate']/@name", "#config/shared/profiles/dos-protection/entry[type='aggregate']/@name"]}} # DoS profile to use for aggregated protection def profile prop_get('profile') end # DoS profile to use for aggregated protection def profile=(val) prop_set('profile', val) end end # class Aggregate def aggregate @subclasses['aggregate'] ||= Aggregate.new(parent_instance: self, create_children: @create_children) end class Classified < ConfigClass def has_multiple_values? false end def _section :'classified' end class ClassificationCriteria < ConfigClass def has_multiple_values? false end def _section :'classification-criteria' end @props={"address"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-ip-only", "help-string"=>"Parameters for IP Address based classification", "enum"=> [{"value"=>"source-ip-only"}, {"value"=>"destination-ip-only"}, {"value"=>"src-dest-ip-both"}]}} # Parameters for IP Address based classification def address prop_get('address') end # Parameters for IP Address based classification def address=(val) prop_set('address', val) end end # class ClassificationCriteria def classification_criteria @subclasses['classification-criteria'] ||= ClassificationCriteria.new(parent_instance: self, create_children: @create_children) end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for classified protection", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/profiles/dos-protection/entry[type='classified']/@name", "#config/shared/profiles/dos-protection/entry[type='classified']/@name"]}} # DoS profile to use for classified protection def profile prop_get('profile') end # DoS profile to use for classified protection def profile=(val) prop_set('profile', val) end end # class Classified def classified @subclasses['classified'] ||= Classified.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protection def protection @subclasses['protection'] ||= Protection.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Protect < ConfigClass def has_multiple_values? false end def _section :'protect' end @props={} end # class Protect def protect @subclasses['protect'] ||= Protect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Dos def dos @subclasses['dos'] ||= Dos.new(parent_instance: self, create_children: @create_children) end class TunnelInspect < ConfigClass def has_multiple_values? false end def _section :'tunnel-inspect' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"gre", "help-string"=>"GRE"}, {"value"=>"vxlan", "help-string"=>"VXLAN"}, {"value"=>"ipsec", "help-string"=>"Non-encrypted IPSec"}, {"value"=>"gtp", "help-string"=>"GTP-U"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class TunnelId < ConfigClass def has_multiple_values? false end def _section :'tunnel-id' end class Vni < XML::ConfigClass def has_multiple_values? true end def _section :'vni' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "id"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"16777215"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('id') end def id=(val) prop_set('id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vni def vni if @create_children @subclasses['vni'] ||= Vni.new(parent_instance: self, create_children: @create_children) else Vni.new(parent_instance: self) end end @props={} end # class TunnelId def tunnel_id @subclasses['tunnel-id'] ||= TunnelId.new(parent_instance: self, create_children: @create_children) end class InspectOptions < ConfigClass def has_multiple_values? false end def _section :'inspect-options' end @props={"max-level-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"1", "help-string"=>"max level inspection", "enum"=> [{"value"=>"1", "help-string"=>"One level"}, {"value"=>"2", "help-string"=>"Two levels (tunnel in tunnel)"}]}, "drop-over-max"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-unknown-protocol"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-strict-checking"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "return-vxlan-to-source"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # max level inspection def max_level_inspection prop_get('max-level-inspection') end # max level inspection def max_level_inspection=(val) prop_set('max-level-inspection', val) end def drop_over_max prop_get('drop-over-max') end def drop_over_max=(val) prop_set('drop-over-max', val) end def drop_unknown_protocol prop_get('drop-unknown-protocol') end def drop_unknown_protocol=(val) prop_set('drop-unknown-protocol', val) end def drop_strict_checking prop_get('drop-strict-checking') end def drop_strict_checking=(val) prop_set('drop-strict-checking', val) end def return_vxlan_to_source prop_get('return-vxlan-to-source') end def return_vxlan_to_source=(val) prop_set('return-vxlan-to-source', val) end end # class InspectOptions def inspect_options @subclasses['inspect-options'] ||= InspectOptions.new(parent_instance: self, create_children: @create_children) end class ZoneAssign < ConfigClass def has_multiple_values? false end def _section :'zone-assign' end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end @props={} end # class ZoneAssign def zone_assign @subclasses['zone-assign'] ||= ZoneAssign.new(parent_instance: self, create_children: @create_children) end class MonitorOptions < ConfigClass def has_multiple_values? false end def _section :'monitor-options' end class LogSettingOverride < ConfigClass def has_multiple_values? false end def _section :'log-setting-override' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class LogSettingOverride def log_setting_override @subclasses['log-setting-override'] ||= LogSettingOverride.new(parent_instance: self, create_children: @create_children) end @props={"monitor-name"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([^0-9]*|[0-9]{1,14}([^0-9]|$)|[0-9]{17,})*$", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"31", "no-default"=>"yes", "help-string"=>"15 or 16 digit number not allowed"}, "monitor-id"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"16777215"}} # 15 or 16 digit number not allowed def monitor_name prop_get('monitor-name') end # 15 or 16 digit number not allowed def monitor_name=(val) prop_set('monitor-name', val) end def monitor_id prop_get('monitor-id') end def monitor_id=(val) prop_set('monitor-id', val) end end # class MonitorOptions def monitor_options @subclasses['monitor-options'] ||= MonitorOptions.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class TunnelInspect def tunnel_inspect @subclasses['tunnel-inspect'] ||= TunnelInspect.new(parent_instance: self, create_children: @create_children) end @props={} end # class PreRulebase def pre_rulebase @subclasses['pre-rulebase'] ||= PreRulebase.new(parent_instance: self, create_children: @create_children) end class PostRulebase < ConfigClass def has_multiple_values? false end def _section :'post-rulebase' end class Security < ConfigClass def has_multiple_values? false end def _section :'security' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"application-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceImsi < XML::ConfigClass def has_multiple_values? true end def _section :'source-imsi' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imsi]/@name"], "multi-types"=> {"imsi"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMSI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImsi def source_imsi if @create_children @subclasses['source-imsi'] ||= SourceImsi.new(parent_instance: self, create_children: @create_children) else SourceImsi.new(parent_instance: self) end end class SourceImei < XML::ConfigClass def has_multiple_values? true end def _section :'source-imei' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/external-list/entry[type/imei]/@name"], "multi-types"=> {"imei"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any IMEI"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceImei def source_imei if @create_children @subclasses['source-imei'] ||= SourceImei.new(parent_instance: self, create_children: @create_children) else SourceImei.new(parent_instance: self) end end class SourceNwSlice < XML::ConfigClass def has_multiple_values? true end def _section :'source-nw-slice' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"nssai"=>{}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any NSSAI ST value"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceNwSlice def source_nw_slice if @create_children @subclasses['source-nw-slice'] ||= SourceNwSlice.new(parent_instance: self, create_children: @create_children) else SourceNwSlice.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"any", "help-string"=>"any device"}, {"value"=>"quarantine", "help-string"=>"quarantined device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end @props={"disable-server-response-inspection"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable inspection of server side traffic"}} # Disable inspection of server side traffic def disable_server_response_inspection prop_get('disable-server-response-inspection') end # Disable inspection of server side traffic def disable_server_response_inspection=(val) prop_set('disable-server-response-inspection', val) end end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class ProfileSetting < XML::ConfigClass def has_multiple_values? true end def _section :'profile-setting' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name", "#dg-hier/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name", "#dg-hier/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name", "#dg-hier/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"47", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name", "#dg-hier/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name", "#dg-hier/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name", "#dg-hier/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name", "#dg-hier/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/gtp/entry/@name", "#dg-hier/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name", "#dg-hier/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Group < XML::ConfigClass def has_multiple_values? true end def _section :'group' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profile-group/entry/@name", "#config/shared/profile-group/entry/@name", "#dg-hier/profile-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Group def group if @create_children @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) else Group.new(parent_instance: self) end end @props={} end # class ProfileSetting def profile_setting if @create_children @subclasses['profile-setting'] ||= ProfileSetting.new(parent_instance: self, create_children: @create_children) else ProfileSetting.new(parent_instance: self) end end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Marking < XML::ConfigClass def has_multiple_values? true end def _section :'marking' end class FollowC2sFlow < ConfigClass def has_multiple_values? false end def _section :'follow-c2s-flow' end @props={} end # class FollowC2sFlow def follow_c2s_flow @subclasses['follow-c2s-flow'] ||= FollowC2sFlow.new(parent_instance: self, create_children: @create_children) end @props={"ip-dscp"=> {"node-type"=>"element", "help-string"=>"IP DSCP", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){6}$", "help-string"=> "specify codepoint in format of 'xxxxxx' where x is {0|1}"}, "enum"=> [{"value"=>"ef", "help-string"=>"codepoint 101110, expedited forwarding"}, {"value"=>"af11", "help-string"=>"codepoint 001010"}, {"value"=>"af12", "help-string"=>"codepoint 001100"}, {"value"=>"af13", "help-string"=>"codepoint 001110"}, {"value"=>"af21", "help-string"=>"codepoint 010010"}, {"value"=>"af22", "help-string"=>"codepoint 010100"}, {"value"=>"af23", "help-string"=>"codepoint 010110"}, {"value"=>"af31", "help-string"=>"codepoint 011010"}, {"value"=>"af32", "help-string"=>"codepoint 011100"}, {"value"=>"af33", "help-string"=>"codepoint 011110"}, {"value"=>"af41", "help-string"=>"codepoint 100010"}, {"value"=>"af42", "help-string"=>"codepoint 100100"}, {"value"=>"af43", "help-string"=>"codepoint 100110"}, {"value"=>"cs0", "help-string"=>"codepoint 000000"}, {"value"=>"cs1", "help-string"=>"codepoint 001000"}, {"value"=>"cs2", "help-string"=>"codepoint 010000"}, {"value"=>"cs3", "help-string"=>"codepoint 011000"}, {"value"=>"cs4", "help-string"=>"codepoint 100000"}, {"value"=>"cs5", "help-string"=>"codepoint 101000"}, {"value"=>"cs6", "help-string"=>"codepoint 110000"}, {"value"=>"cs7", "help-string"=>"codepoint 111000"}]}}, "ip-precedence"=> {"node-type"=>"element", "help-string"=>"IP Precedence", "type"=>"multiple", "multi-types"=> {"string"=> {"regex"=>"^([0-1]){3}$", "help-string"=>"specify codepoint in format of 'xxx'"}, "enum"=> [{"value"=>"cs0", "help-string"=>"codepoint 000"}, {"value"=>"cs1", "help-string"=>"codepoint 001"}, {"value"=>"cs2", "help-string"=>"codepoint 010"}, {"value"=>"cs3", "help-string"=>"codepoint 011"}, {"value"=>"cs4", "help-string"=>"codepoint 100"}, {"value"=>"cs5", "help-string"=>"codepoint 101"}, {"value"=>"cs6", "help-string"=>"codepoint 110"}, {"value"=>"cs7", "help-string"=>"codepoint 111"}]}}} # IP DSCP def ip_dscp prop_get('ip-dscp') end # IP DSCP def ip_dscp=(val) prop_set('ip-dscp', val) end # IP Precedence def ip_precedence prop_get('ip-precedence') end # IP Precedence def ip_precedence=(val) prop_set('ip-precedence', val) end end # class Marking def marking if @create_children @subclasses['marking'] ||= Marking.new(parent_instance: self, create_children: @create_children) else Marking.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=> [{"value"=>"deny", "help-string"=>"Deny", "show-help-tip"=>"block, use App Deny action"}, {"value"=>"allow", "help-string"=>"Allow"}, {"value"=>"drop", "help-string"=>"Drop", "show-help-tip"=>"silent drop, send optional ICMP Unreachable"}, {"value"=>"reset-client", "help-string"=>"Reset client"}, {"value"=>"reset-server", "help-string"=>"Reset server"}, {"value"=>"reset-both", "help-string"=>"Reset both client and server"}]}, "icmp-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Send ICMP unreachable error when action is drop or reset"}, "rule-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"universal", "optional"=>"yes", "enum"=> [{"value"=>"universal", "help-string"=>"default", "show-help-tip"=>"Applies to both interzone and intrazone traffic."}, {"value"=>"intrazone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Only applies to traffic within one of the specified zones."}, {"value"=>"interzone", "help-string"=>"Devices with PAN-OS 6.1 or later", "show-help-tip"=> "Applies to traffic from any source zone to any destination zone. It does not apply to traffic within a zone, even if the same zone is in source and destination columns."}]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable prop_get('icmp-unreachable') end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable=(val) prop_set('icmp-unreachable', val) end def rule_type prop_get('rule-type') end def rule_type=(val) prop_set('rule-type', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Security def security @subclasses['security'] ||= Security.new(parent_instance: self, create_children: @create_children) end class DefaultSecurityRules < ConfigClass def has_multiple_values? false end def _section :'default-security-rules' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class ProfileSetting < XML::ConfigClass def has_multiple_values? true end def _section :'profile-setting' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class UrlFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'url-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/url-filtering/entry/@name", "#config/shared/profiles/url-filtering/entry/@name", "#dg-hier/profiles/url-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UrlFiltering def url_filtering if @create_children @subclasses['url-filtering'] ||= UrlFiltering.new(parent_instance: self, create_children: @create_children) else UrlFiltering.new(parent_instance: self) end end class DataFiltering < XML::ConfigClass def has_multiple_values? true end def _section :'data-filtering' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/data-filtering/entry/@name", "#config/shared/profiles/data-filtering/entry/@name", "#dg-hier/profiles/data-filtering/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DataFiltering def data_filtering if @create_children @subclasses['data-filtering'] ||= DataFiltering.new(parent_instance: self, create_children: @create_children) else DataFiltering.new(parent_instance: self) end end class FileBlocking < XML::ConfigClass def has_multiple_values? true end def _section :'file-blocking' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/file-blocking/entry/@name", "#config/shared/profiles/file-blocking/entry/@name", "#dg-hier/profiles/file-blocking/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class FileBlocking def file_blocking if @create_children @subclasses['file-blocking'] ||= FileBlocking.new(parent_instance: self, create_children: @create_children) else FileBlocking.new(parent_instance: self) end end class WildfireAnalysis < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-analysis' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"47", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/wildfire-analysis/entry/@name", "#config/shared/profiles/wildfire-analysis/entry/@name", "#dg-hier/profiles/wildfire-analysis/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class WildfireAnalysis def wildfire_analysis if @create_children @subclasses['wildfire-analysis'] ||= WildfireAnalysis.new(parent_instance: self, create_children: @create_children) else WildfireAnalysis.new(parent_instance: self) end end class Virus < XML::ConfigClass def has_multiple_values? true end def _section :'virus' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/virus/entry/@name", "#config/shared/profiles/virus/entry/@name", "#dg-hier/profiles/virus/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Virus def virus if @create_children @subclasses['virus'] ||= Virus.new(parent_instance: self, create_children: @create_children) else Virus.new(parent_instance: self) end end class Spyware < XML::ConfigClass def has_multiple_values? true end def _section :'spyware' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/spyware/entry/@name", "#config/shared/profiles/spyware/entry/@name", "#dg-hier/profiles/spyware/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Spyware def spyware if @create_children @subclasses['spyware'] ||= Spyware.new(parent_instance: self, create_children: @create_children) else Spyware.new(parent_instance: self) end end class Vulnerability < XML::ConfigClass def has_multiple_values? true end def _section :'vulnerability' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"default", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/vulnerability/entry/@name", "#config/shared/profiles/vulnerability/entry/@name", "#dg-hier/profiles/vulnerability/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vulnerability def vulnerability if @create_children @subclasses['vulnerability'] ||= Vulnerability.new(parent_instance: self, create_children: @create_children) else Vulnerability.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["#config/shared/profiles/gtp/entry/@name", "#dg-hier/profiles/gtp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Sctp < XML::ConfigClass def has_multiple_values? true end def _section :'sctp' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sctp/entry/@name", "#config/shared/profiles/sctp/entry/@name", "#dg-hier/profiles/sctp/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Sctp def sctp if @create_children @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) else Sctp.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Group < XML::ConfigClass def has_multiple_values? true end def _section :'group' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profile-group/entry/@name", "#config/shared/profile-group/entry/@name", "#dg-hier/profile-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Group def group if @create_children @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) else Group.new(parent_instance: self) end end @props={} end # class ProfileSetting def profile_setting if @create_children @subclasses['profile-setting'] ||= ProfileSetting.new(parent_instance: self, create_children: @create_children) else ProfileSetting.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^(intrazone-default|interzone-default)$", "help-string"=>"intrazone-default or interzone-default"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"allow", "enum"=> [{"value"=>"deny", "help-string"=>"Deny"}, {"value"=>"allow", "help-string"=>"Allow"}, {"value"=>"drop", "help-string"=>"Drop", "show-help-tip"=>"silent drop, send optional ICMP Unreachable"}, {"value"=>"reset-client", "help-string"=>"Reset client"}, {"value"=>"reset-server", "help-string"=>"Reset server"}, {"value"=>"reset-both", "help-string"=>"Reset both client and server"}]}, "icmp-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Send ICMP unreachable error when action is drop or reset"}} # intrazone-default or interzone-default def name prop_get('@name') end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable prop_get('icmp-unreachable') end # Send ICMP unreachable error when action is drop or reset def icmp_unreachable=(val) prop_set('icmp-unreachable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class DefaultSecurityRules def default_security_rules @subclasses['default-security-rules'] ||= DefaultSecurityRules.new(parent_instance: self, create_children: @create_children) end class ApplicationOverride < ConfigClass def has_multiple_values? false end def _section :'application-override' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"tcp", "enum"=> [{"value"=>"tcp", "help-string"=>"TCP"}, {"value"=>"udp", "help-string"=>"UDP"}]}, "port"=>{"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0"}, "application"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#dg-hier/application/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def application prop_get('application') end def application=(val) prop_set('application', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class ApplicationOverride def application_override @subclasses['application-override'] ||= ApplicationOverride.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class SslForwardProxy < ConfigClass def has_multiple_values? false end def _section :'ssl-forward-proxy' end @props={} end # class SslForwardProxy def ssl_forward_proxy @subclasses['ssl-forward-proxy'] ||= SslForwardProxy.new(parent_instance: self, create_children: @create_children) end class SshProxy < ConfigClass def has_multiple_values? false end def _section :'ssh-proxy' end @props={} end # class SshProxy def ssh_proxy @subclasses['ssh-proxy'] ||= SshProxy.new(parent_instance: self, create_children: @create_children) end @props={"ssl-inbound-inspection"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"31", "help-string"=>"SSL Inbound Inspection", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name", "#config/shared/certificate/entry[not(csr)][private-key or private-key-on-hsm]/@name"]}} # SSL Inbound Inspection def ssl_inbound_inspection prop_get('ssl-inbound-inspection') end # SSL Inbound Inspection def ssl_inbound_inspection=(val) prop_set('ssl-inbound-inspection', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no-decrypt", "enum"=> [{"value"=>"no-decrypt"}, {"value"=>"decrypt"}, {"value"=>"decrypt-and-forward"}]}, "profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"decryption profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/decryption/entry/@name", "#config/shared/profiles/decryption/entry/@name", "#dg-hier/profiles/decryption/entry/@name"]}, "forwarding-profile"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"forwarding profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#dg-hier/profiles/forwarding/entry/@name"]}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # decryption profile def profile prop_get('profile') end # decryption profile def profile=(val) prop_set('profile', val) end # forwarding profile def forwarding_profile prop_get('forwarding-profile') end # forwarding profile def forwarding_profile=(val) prop_set('forwarding-profile', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"service-http", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class HipProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'hip-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class HipProfiles def hip_profiles if @create_children @subclasses['hip-profiles'] ||= HipProfiles.new(parent_instance: self, create_children: @create_children) else HipProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "authentication-enforcement"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "Authentication enforcement object to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-object/entry/@name", "#config/shared/authentication-object/entry/@name", "##/predefined/authentication-object/entry/@name", "#dg-hier/authentication-object/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding authentication logs", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/profiles/entry/@name", "#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"60", "help-string"=>"expiration timer (minutes)"}, "log-authentication-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Authentication enforcement object to use for authentication. def authentication_enforcement prop_get('authentication-enforcement') end # Authentication enforcement object to use for authentication. def authentication_enforcement=(val) prop_set('authentication-enforcement', val) end # Log setting for forwarding authentication logs def log_setting prop_get('log-setting') end # Log setting for forwarding authentication logs def log_setting=(val) prop_set('log-setting', val) end # expiration timer (minutes) def timeout prop_get('timeout') end # expiration timer (minutes) def timeout=(val) prop_set('timeout', val) end def log_authentication_timeout prop_get('log-authentication-timeout') end def log_authentication_timeout=(val) prop_set('log-authentication-timeout', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=> [{"value"=>"multicast", "help-string"=>"multicast zone"}, {"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/bc-url-categories/entry/@name", "##/predefined/pan-url-categories/entry/@name", "#config/shared/profiles/custom-url-category/entry/@name", "#config/shared/external-list/entry[type/url]/@name", "#config/shared/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name", "#dg-hier/profiles/custom-url-category/entry/@name", "#dg-hier/external-list/entry[type/url]/@name", "#dg-hier/external-list/entry[type/predefined-url]/@name", "##/predefined/url-predefined/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"128"}, "enum"=>[{"value"=>"any", "help-string"=>"any url category"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class SourceHip < XML::ConfigClass def has_multiple_values? true end def _section :'source-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "#dg-hier/device-object/entry/@name", "#dg-hier/profiles/hip-profiles/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"any", "help-string"=>"any hip-profile"}, {"value"=>"no-hip", "help-string"=>"no hip-profile"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceHip def source_hip if @create_children @subclasses['source-hip'] ||= SourceHip.new(parent_instance: self, create_children: @create_children) else SourceHip.new(parent_instance: self) end end class DestinationHip < XML::ConfigClass def has_multiple_values? true end def _section :'destination-hip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/device-object/entry/@name", "#config/shared/device-object/entry/@name", "#dg-hier/device-object/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any device"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DestinationHip def destination_hip if @create_children @subclasses['destination-hip'] ||= DestinationHip.new(parent_instance: self, create_children: @create_children) else DestinationHip.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class DscpTos < XML::ConfigClass def has_multiple_values? true end def _section :'dscp-tos' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Codepoints < XML::ConfigClass def has_multiple_values? true end def _section :'codepoints' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ef < ConfigClass def has_multiple_values? false end def _section :'ef' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"ef", "help-string"=>"101110"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Ef def ef @subclasses['ef'] ||= Ef.new(parent_instance: self, create_children: @create_children) end class Af < ConfigClass def has_multiple_values? false end def _section :'af' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"af11", "help-string"=>"af11 (001010)"}, {"value"=>"af12", "help-string"=>"af12 (001100)"}, {"value"=>"af13", "help-string"=>"af13 (001110)"}, {"value"=>"af21", "help-string"=>"af21 (010010)"}, {"value"=>"af22", "help-string"=>"af22 (010100)"}, {"value"=>"af23", "help-string"=>"af23 (010110)"}, {"value"=>"af31", "help-string"=>"af31 (011010)"}, {"value"=>"af32", "help-string"=>"af32 (011100)"}, {"value"=>"af33", "help-string"=>"af33 (011110)"}, {"value"=>"af41", "help-string"=>"af41 (100010)"}, {"value"=>"af42", "help-string"=>"af42 (100100)"}, {"value"=>"af43", "help-string"=>"af43 (100110)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Af def af @subclasses['af'] ||= Af.new(parent_instance: self, create_children: @create_children) end class Cs < ConfigClass def has_multiple_values? false end def _section :'cs' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001000)"}, {"value"=>"cs2", "help-string"=>"cs2 (010000)"}, {"value"=>"cs3", "help-string"=>"cs3 (011000)"}, {"value"=>"cs4", "help-string"=>"cs4 (100000)"}, {"value"=>"cs5", "help-string"=>"cs5 (101000)"}, {"value"=>"cs6", "help-string"=>"cs6 (110000)"}, {"value"=>"cs7", "help-string"=>"cs7 (111000)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Cs def cs @subclasses['cs'] ||= Cs.new(parent_instance: self, create_children: @create_children) end class Tos < ConfigClass def has_multiple_values? false end def _section :'tos' end @props={"codepoint"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"cs0", "help-string"=>"cs0 (000)"}, {"value"=>"cs1", "help-string"=>"cs1 (001)"}, {"value"=>"cs2", "help-string"=>"cs2 (010)"}, {"value"=>"cs3", "help-string"=>"cs3 (011)"}, {"value"=>"cs4", "help-string"=>"cs4 (100)"}, {"value"=>"cs5", "help-string"=>"cs5 (101)"}, {"value"=>"cs6", "help-string"=>"cs6 (110)"}, {"value"=>"cs7", "help-string"=>"cs7 (111)"}]}} def codepoint prop_get('codepoint') end def codepoint=(val) prop_set('codepoint', val) end end # class Tos def tos @subclasses['tos'] ||= Tos.new(parent_instance: self, create_children: @create_children) end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end class Codepoint < ConfigClass def has_multiple_values? false end def _section :'codepoint' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "value"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"codepoint in format 'xxxxxx' where x is {0|1}"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('name') end # alphanumeric string [ 0-9a-zA-Z._-] def name=(val) prop_set('name', val) end # codepoint in format 'xxxxxx' where x is {0|1} def value prop_get('value') end # codepoint in format 'xxxxxx' where x is {0|1} def value=(val) prop_set('value', val) end end # class Codepoint def codepoint @subclasses['codepoint'] ||= Codepoint.new(parent_instance: self, create_children: @create_children) end @props={} end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"codepoint name, alphanumeric string [ 0-9a-zA-Z._-]"}} # codepoint name, alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Codepoints def codepoints if @create_children @subclasses['codepoints'] ||= Codepoints.new(parent_instance: self, create_children: @create_children) else Codepoints.new(parent_instance: self) end end @props={} end # class DscpTos def dscp_tos if @create_children @subclasses['dscp-tos'] ||= DscpTos.new(parent_instance: self, create_children: @create_children) else DscpTos.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"class"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"assigned class", "enum"=> [{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}, {"value"=>"4"}, {"value"=>"5"}, {"value"=>"6"}, {"value"=>"7"}, {"value"=>"8"}]}} # assigned class def class prop_get('class') end # assigned class def class=(val) prop_set('class', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name", "#mytemplates/#dg-hier/zone/entry[network/virtual-wire]/@name", "#mytemplates/#dg-hier/zone/entry[network/external]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name", "#mytemplates/#dg-hier/zone/entry[network/virtual-wire]/@name", "#mytemplates/#dg-hier/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31", "disallow-keyword-any"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceTranslation < ConfigClass def has_multiple_values? false end def _section :'source-translation' end class DynamicIpAndPort < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip-and-port' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#mytemplates/#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.nat.rules.interface-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#mytemplates/#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIpAndPort def dynamic_ip_and_port @subclasses['dynamic-ip-and-port'] ||= DynamicIpAndPort.new(parent_instance: self, create_children: @create_children) end class DynamicIp < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#dg-hier/address/entry[not(fqdn)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class Fallback < ConfigClass def has_multiple_values? false end def _section :'fallback' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#dg-hier/address/entry[not(fqdn)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#mytemplates/#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#mytemplates/#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#mytemplates/#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Fallback def fallback @subclasses['fallback'] ||= Fallback.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIp def dynamic_ip @subclasses['dynamic-ip'] ||= DynamicIp.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#dg-hier/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "bi-directional"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"no", "help-string"=> "allow reverse translation from translated address to original address", "enum"=> [{"value"=>"yes", "help-string"=>"Bi-directional rule"}, {"value"=>"no", "help-string"=>"Uni-directional rule"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end # allow reverse translation from translated address to original address def bi_directional prop_get('bi-directional') end # allow reverse translation from translated address to original address def bi_directional=(val) prop_set('bi-directional', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class SourceTranslation def source_translation @subclasses['source-translation'] ||= SourceTranslation.new(parent_instance: self, create_children: @create_children) end class DestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'destination-translation' end class DnsRewrite < ConfigClass def has_multiple_values? false end def _section :'dns-rewrite' end @props={"direction"=> {"node-type"=>"element", "type"=>"enum", "default"=>"reverse", "help-string"=>"Select direction to apply DNS rewrite", "enum"=> [{"value"=>"reverse", "help-string"=>"Reverse translation"}, {"value"=>"forward", "help-string"=>"Forward translation"}]}} # Select direction to apply DNS rewrite def direction prop_get('direction') end # Select direction to apply DNS rewrite def direction=(val) prop_set('direction', val) end end # class DnsRewrite def dns_rewrite @subclasses['dns-rewrite'] ||= DnsRewrite.new(parent_instance: self, create_children: @create_children) end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#dg-hier/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end end # class DestinationTranslation def destination_translation @subclasses['destination-translation'] ||= DestinationTranslation.new(parent_instance: self, create_children: @create_children) end class DynamicDestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'dynamic-destination-translation' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}, "distribution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"round-robin", "help-string"=>"Distribution algorithm for destination address pool", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"source-ip-hash", "help-string"=>"Source IP Hash"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"least-sessions", "help-string"=>"Least Sessions"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end # Distribution algorithm for destination address pool def distribution prop_get('distribution') end # Distribution algorithm for destination address pool def distribution=(val) prop_set('distribution', val) end end # class DynamicDestinationTranslation def dynamic_destination_translation @subclasses['dynamic-destination-translation'] ||= DynamicDestinationTranslation.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "service"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "#config/shared/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name", "string('any')"]}, "nat-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"type of nat", "enum"=> [{"value"=>"ipv4", "help-string"=>"ipv4 nat"}, {"value"=>"nat64", "help-string"=>"translator between ipv6 and ipv4"}, {"value"=>"nptv6", "help-string"=>"network prefix translator for ipv6"}]}, "to-interface"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"any", "type"=>"multiple", "help-string"=>"Egress interface from route lookup", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/to-interface", "#dg-hier/post-rulebase/*/rules/entry/to-interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any interface"}]}}, "active-active-device-binding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"primary", "help-string"=>"Rule is bound to Active-Primary device"}, {"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def service prop_get('service') end def service=(val) prop_set('service', val) end # type of nat def nat_type prop_get('nat-type') end # type of nat def nat_type=(val) prop_set('nat-type', val) end # Egress interface from route lookup def to_interface prop_get('to-interface') end # Egress interface from route lookup def to_interface=(val) prop_set('to-interface', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class Pbf < ConfigClass def has_multiple_values? false end def _section :'pbf' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name", "#mytemplates/#dg-hier/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/from/interface/member", "#dg-hier/post-rulebase/*/rules/entry/from/interface/member", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[not(cachable='no')]/@name", "#config/shared/content-preview/application/entry[not(cachable='no')]/@name", "#dg-hier/pre-rulebase/application-override/rules/entry/application", "#dg-hier/post-rulebase/application-override/rules/entry/application"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Forward < ConfigClass def has_multiple_values? false end def _section :'forward' end class Nexthop < ConfigClass def has_multiple_values? false end def _section :'nexthop' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#dg-hier/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[fqdn]/@name", "#config/devices/entry/network/shared-gateway/entry[import/network/interface/member='$ifname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "#config/devices/entry/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='$vsysname']/address/entry[fqdn]/@name", "##/panorama/vsys/entry[@name='vsys1']/address/entry[fqdn]/@name", "#dg-hier/address/entry[fqdn]/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN name configuration def fqdn prop_get('fqdn') end # nexthop address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class Nexthop def nexthop @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Monitoring profile associated with this rule", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#mytemplates/#myentry(devices)/network/profiles/monitor-profile/entry/@name"]}, "disable-if-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable this rule if nexthop/monitor ip is unreachable"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Monitor IP address"}} # Monitoring profile associated with this rule def profile prop_get('profile') end # Monitoring profile associated with this rule def profile=(val) prop_set('profile', val) end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable prop_get('disable-if-unreachable') end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable=(val) prop_set('disable-if-unreachable', val) end # Monitor IP address def ip_address prop_get('ip-address') end # Monitor IP address def ip_address=(val) prop_set('ip-address', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end @props={"egress-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/egress-interface", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/egress-interface", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#mytemplates/#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} # Interface to route packet to def egress_interface prop_get('egress-interface') end # Interface to route packet to def egress_interface=(val) prop_set('egress-interface', val) end end # class Forward def forward @subclasses['forward'] ||= Forward.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end class NoPbf < ConfigClass def has_multiple_values? false end def _section :'no-pbf' end @props={} end # class NoPbf def no_pbf @subclasses['no-pbf'] ||= NoPbf.new(parent_instance: self, create_children: @create_children) end @props={"forward-to-vsys"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Virtual system/Shared gateway to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward-to-vsys", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward-to-vsys", "#mytemplates/#myentry(devices)/vsys/entry/@name", "#mytemplates/#myentry(devices)/network/shared-gateway/entry/@name"]}} # Virtual system/Shared gateway to route packet to def forward_to_vsys prop_get('forward-to-vsys') end # Virtual system/Shared gateway to route packet to def forward_to_vsys=(val) prop_set('forward-to-vsys', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end class EnforceSymmetricReturn < ConfigClass def has_multiple_values? false end def _section :'enforce-symmetric-return' end class NexthopAddressList < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop-address-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address"}} # IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NexthopAddressList def nexthop_address_list if @create_children @subclasses['nexthop-address-list'] ||= NexthopAddressList.new(parent_instance: self, create_children: @create_children) else NexthopAddressList.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable symmetric return"}} # Enable symmetric return def enabled prop_get('enabled') end # Enable symmetric return def enabled=(val) prop_set('enabled', val) end end # class EnforceSymmetricReturn def enforce_symmetric_return @subclasses['enforce-symmetric-return'] ||= EnforceSymmetricReturn.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "active-active-device-binding"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.pbf.rules.active-active-device-binding-disable=True", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Pbf def pbf @subclasses['pbf'] ||= Pbf.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#dg-hier/application/entry/@name", "#dg-hier/application-group/entry/@name", "#dg-hier/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"traffic-distribution-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan traffic distribution associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-traffic-distribution/entry/@name", "#config/shared/profiles/sdwan-traffic-distribution/entry/@name", "#dg-hier/profiles/sdwan-traffic-distribution/entry/@name"]}, "app-failover-for-nat-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"keep-existing-link", "help-string"=>"For NAT sessions, specify whether to move to a better path", "enum"=> [{"value"=>"keep-existing-link", "help-string"=>"Keep session on existing link"}, {"value"=>"failover-to-better-path", "help-string"=>"Allow session failover to better path"}]}} # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile prop_get('traffic-distribution-profile') end # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile=(val) prop_set('traffic-distribution-profile', val) end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions prop_get('app-failover-for-nat-sessions') end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions=(val) prop_set('app-failover-for-nat-sessions', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "path-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan path quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-path-quality/entry/@name", "#config/shared/profiles/sdwan-path-quality/entry/@name", "#dg-hier/profiles/sdwan-path-quality/entry/@name"]}, "saas-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan saas quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-saas-quality/entry/@name", "#config/shared/profiles/sdwan-saas-quality/entry/@name", "#dg-hier/profiles/sdwan-saas-quality/entry/@name"]}, "error-correction-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan error correction profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-error-correction/entry/@name", "#config/shared/profiles/sdwan-error-correction/entry/@name", "#dg-hier/profiles/sdwan-error-correction/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # attach sdwan path quality profile associated with this rule def path_quality_profile prop_get('path-quality-profile') end # attach sdwan path quality profile associated with this rule def path_quality_profile=(val) prop_set('path-quality-profile', val) end # attach sdwan saas quality profile associated with this rule def saas_quality_profile prop_get('saas-quality-profile') end # attach sdwan saas quality profile associated with this rule def saas_quality_profile=(val) prop_set('saas-quality-profile', val) end # attach sdwan error correction profile associated with this rule def error_correction_profile prop_get('error-correction-profile') end # attach sdwan error correction profile associated with this rule def error_correction_profile=(val) prop_set('error-correction-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end class Dos < ConfigClass def has_multiple_values? false end def _section :'dos' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/from/interface/member", "#dg-hier/post-rulebase/*/rules/entry/from/interface/member", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class To < ConfigClass def has_multiple_values? false end def _section :'to' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#mytemplates/#dg-hier/zone/entry/@name", "string('multicast')"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"multicast", "help-string"=>"multicast zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/to/interface/member", "#dg-hier/post-rulebase/*/rules/entry/to/interface/member", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#mytemplates/#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#mytemplates/#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#mytemplates/#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name", "#mytemplates/#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name", "#mytemplates/#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class To def to @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#dg-hier/service/entry/@name", "#dg-hier/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Protection < ConfigClass def has_multiple_values? false end def _section :'protection' end class Aggregate < ConfigClass def has_multiple_values? false end def _section :'aggregate' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for aggregated protection", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/profiles/dos-protection/entry[type='aggregate']/@name", "#config/shared/profiles/dos-protection/entry[type='aggregate']/@name"]}} # DoS profile to use for aggregated protection def profile prop_get('profile') end # DoS profile to use for aggregated protection def profile=(val) prop_set('profile', val) end end # class Aggregate def aggregate @subclasses['aggregate'] ||= Aggregate.new(parent_instance: self, create_children: @create_children) end class Classified < ConfigClass def has_multiple_values? false end def _section :'classified' end class ClassificationCriteria < ConfigClass def has_multiple_values? false end def _section :'classification-criteria' end @props={"address"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-ip-only", "help-string"=>"Parameters for IP Address based classification", "enum"=> [{"value"=>"source-ip-only"}, {"value"=>"destination-ip-only"}, {"value"=>"src-dest-ip-both"}]}} # Parameters for IP Address based classification def address prop_get('address') end # Parameters for IP Address based classification def address=(val) prop_set('address', val) end end # class ClassificationCriteria def classification_criteria @subclasses['classification-criteria'] ||= ClassificationCriteria.new(parent_instance: self, create_children: @create_children) end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"DoS profile to use for classified protection", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/profiles/dos-protection/entry[type='classified']/@name", "#config/shared/profiles/dos-protection/entry[type='classified']/@name"]}} # DoS profile to use for classified protection def profile prop_get('profile') end # DoS profile to use for classified protection def profile=(val) prop_set('profile', val) end end # class Classified def classified @subclasses['classified'] ||= Classified.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protection def protection @subclasses['protection'] ||= Protection.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Protect < ConfigClass def has_multiple_values? false end def _section :'protect' end @props={} end # class Protect def protect @subclasses['protect'] ||= Protect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/schedule/entry/@name", "#dg-hier/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Dos def dos @subclasses['dos'] ||= Dos.new(parent_instance: self, create_children: @create_children) end class TunnelInspect < ConfigClass def has_multiple_values? false end def _section :'tunnel-inspect' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "#dg-hier/external-list/entry[type/imsi]/@name", "#dg-hier/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#mytemplates/#dg-hier/local-user-database/user/entry/@name", "#mytemplates/#dg-hier/local-user-database/user-group/entry/@name", "#dg-hier/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#config/shared/region/entry/@name", "#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#dg-hier/region/entry/@name", "#dg-hier/address/entry[not(ip-wildcard)]/@name", "#dg-hier/address-group/entry/@name", "#dg-hier/external-list/entry[type/ip]/@name", "#dg-hier/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"gre", "help-string"=>"GRE"}, {"value"=>"vxlan", "help-string"=>"VXLAN"}, {"value"=>"ipsec", "help-string"=>"Non-encrypted IPSec"}, {"value"=>"gtp", "help-string"=>"GTP-U"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class TunnelId < ConfigClass def has_multiple_values? false end def _section :'tunnel-id' end class Vni < XML::ConfigClass def has_multiple_values? true end def _section :'vni' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "id"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"16777215"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('id') end def id=(val) prop_set('id', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vni def vni if @create_children @subclasses['vni'] ||= Vni.new(parent_instance: self, create_children: @create_children) else Vni.new(parent_instance: self) end end @props={} end # class TunnelId def tunnel_id @subclasses['tunnel-id'] ||= TunnelId.new(parent_instance: self, create_children: @create_children) end class InspectOptions < ConfigClass def has_multiple_values? false end def _section :'inspect-options' end @props={"max-level-inspection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"1", "help-string"=>"max level inspection", "enum"=> [{"value"=>"1", "help-string"=>"One level"}, {"value"=>"2", "help-string"=>"Two levels (tunnel in tunnel)"}]}, "drop-over-max"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-unknown-protocol"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "drop-strict-checking"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "return-vxlan-to-source"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # max level inspection def max_level_inspection prop_get('max-level-inspection') end # max level inspection def max_level_inspection=(val) prop_set('max-level-inspection', val) end def drop_over_max prop_get('drop-over-max') end def drop_over_max=(val) prop_set('drop-over-max', val) end def drop_unknown_protocol prop_get('drop-unknown-protocol') end def drop_unknown_protocol=(val) prop_set('drop-unknown-protocol', val) end def drop_strict_checking prop_get('drop-strict-checking') end def drop_strict_checking=(val) prop_set('drop-strict-checking', val) end def return_vxlan_to_source prop_get('return-vxlan-to-source') end def return_vxlan_to_source=(val) prop_set('return-vxlan-to-source', val) end end # class InspectOptions def inspect_options @subclasses['inspect-options'] ||= InspectOptions.new(parent_instance: self, create_children: @create_children) end class ZoneAssign < ConfigClass def has_multiple_values? false end def _section :'zone-assign' end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "no-default"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#mytemplates/#dg-hier/zone/entry[network/tunnel]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end @props={} end # class ZoneAssign def zone_assign @subclasses['zone-assign'] ||= ZoneAssign.new(parent_instance: self, create_children: @create_children) end class MonitorOptions < ConfigClass def has_multiple_values? false end def _section :'monitor-options' end class LogSettingOverride < ConfigClass def has_multiple_values? false end def _section :'log-setting-override' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#dg-hier/log-settings/profiles/entry/@name"]}, "log-start"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session start"}, "log-end"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log at session end (required for certain ACC tables)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end # Log at session start def log_start prop_get('log-start') end # Log at session start def log_start=(val) prop_set('log-start', val) end # Log at session end (required for certain ACC tables) def log_end prop_get('log-end') end # Log at session end (required for certain ACC tables) def log_end=(val) prop_set('log-end', val) end end # class LogSettingOverride def log_setting_override @subclasses['log-setting-override'] ||= LogSettingOverride.new(parent_instance: self, create_children: @create_children) end @props={"monitor-name"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([^0-9]*|[0-9]{1,14}([^0-9]|$)|[0-9]{17,})*$", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"31", "no-default"=>"yes", "help-string"=>"15 or 16 digit number not allowed"}, "monitor-id"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"16777215"}} # 15 or 16 digit number not allowed def monitor_name prop_get('monitor-name') end # 15 or 16 digit number not allowed def monitor_name=(val) prop_set('monitor-name', val) end def monitor_id prop_get('monitor-id') end def monitor_id=(val) prop_set('monitor-id', val) end end # class MonitorOptions def monitor_options @subclasses['monitor-options'] ||= MonitorOptions.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=>["#config/shared/tag/entry/@name", "#dg-hier/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class TunnelInspect def tunnel_inspect @subclasses['tunnel-inspect'] ||= TunnelInspect.new(parent_instance: self, create_children: @create_children) end @props={} end # class PostRulebase def post_rulebase @subclasses['post-rulebase'] ||= PostRulebase.new(parent_instance: self, create_children: @create_children) end class Reports < XML::ConfigClass def has_multiple_values? true end def _section :'reports' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Hipmatch__10 < ConfigClass def has_multiple_values? false end def _section :'hipmatch__10' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}]}, "last-match-by"=>{"node-type"=>"element", "type"=>"enum", "optional"=>"yes"}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end def last_match_by prop_get('last-match-by') end def last_match_by=(val) prop_set('last-match-by', val) end end # class Hipmatch__10 def hipmatch__10 @subclasses['hipmatch__10'] ||= Hipmatch__10.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class PanoramaDecryption < ConfigClass def has_multiple_values? false end def _section :'panorama-decryption' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"ec_curve"}, {"value"=>"err_index"}, {"value"=>"root_status"}, {"value"=>"proxy_type"}, {"value"=>"policy_name"}, {"value"=>"cn"}, {"value"=>"issuer_cn"}, {"value"=>"root_cn"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"ec_curve"}, {"value"=>"err_index"}, {"value"=>"root_status"}, {"value"=>"proxy_type"}, {"value"=>"policy_name"}, {"value"=>"cn"}, {"value"=>"issuer_cn"}, {"value"=>"root_cn"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaDecryption def panorama_decryption @subclasses['panorama-decryption'] ||= PanoramaDecryption.new(parent_instance: self, create_children: @create_children) end class PanoramaDesum < ConfigClass def has_multiple_values? false end def _section :'panorama-desum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"vsys"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"err_index"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"vsys"}, {"value"=>"tls_version"}, {"value"=>"tls_keyxchg"}, {"value"=>"tls_enc"}, {"value"=>"tls_auth"}, {"value"=>"sni"}, {"value"=>"error"}, {"value"=>"err_index"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaDesum def panorama_desum @subclasses['panorama-desum'] ||= PanoramaDesum.new(parent_instance: self, create_children: @create_children) end class PanoramaThreat < ConfigClass def has_multiple_values? false end def _section :'panorama-threat' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"threatid"}, {"value"=>"category"}, {"value"=>"severity"}, {"value"=>"direction"}, {"value"=>"http_method"}, {"value"=>"nssai_sst"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"hostid"}, {"value"=>"partial_hash"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"misc"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"subtype"}, {"value"=>"transaction"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"users"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"threatid"}, {"value"=>"category"}, {"value"=>"severity"}, {"value"=>"direction"}, {"value"=>"http_method"}, {"value"=>"nssai_sst"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"hostid"}, {"value"=>"partial_hash"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"misc"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"subtype"}, {"value"=>"transaction"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"users"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaThreat def panorama_threat @subclasses['panorama-threat'] ||= PanoramaThreat.new(parent_instance: self, create_children: @create_children) end class PanoramaUrl < ConfigClass def has_multiple_values? false end def _section :'panorama-url' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"action"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"http_headers"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"contenttype"}, {"value"=>"user_agent"}, {"value"=>"xff"}, {"value"=>"referer"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"url", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"http_method"}, {"value"=>"url_category_list"}, {"value"=>"xff_ip"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"http_headers"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"contenttype"}, {"value"=>"serial"}, {"value"=>"user_agent"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"url", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"http_method"}, {"value"=>"url_category_list"}, {"value"=>"xff_ip"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaUrl def panorama_url @subclasses['panorama-url'] ||= PanoramaUrl.new(parent_instance: self, create_children: @create_children) end class PanoramaWildfire < ConfigClass def has_multiple_values? false end def _section :'panorama-wildfire' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"non-std-dport"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"filetype"}, {"value"=>"sender"}, {"value"=>"subject"}, {"value"=>"recipient"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"filedigest"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"app"}, {"value"=>"category"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"filetype"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"filedigest"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaWildfire def panorama_wildfire @subclasses['panorama-wildfire'] ||= PanoramaWildfire.new(parent_instance: self, create_children: @create_children) end class PanoramaData < ConfigClass def has_multiple_values? false end def _section :'panorama-data' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"subtype"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"threatid"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"data-type", "internal"=>"yes"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"filedigest"}, {"value"=>"filetype"}, {"value"=>"reportid"}, {"value"=>"reason"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"direction"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"misc"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"severity"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"subtype"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"threatid"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"data-type", "internal"=>"yes"}, {"value"=>"filename", "internal"=>"yes"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"imsi"}, {"value"=>"imei"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"http2_connection"}, {"value"=>"tunnel"}, {"value"=>"xff_ip"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaData def panorama_data @subclasses['panorama-data'] ||= PanoramaData.new(parent_instance: self, create_children: @create_children) end class PanoramaThsum < ConfigClass def has_multiple_values? false end def _section :'panorama-thsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"threatid"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"xff_ip"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"severity"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"category"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"direction"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"subtype"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sessions"}, {"value"=>"count"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"threatid"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"xff_ip"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"severity"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"category"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"direction"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"threat_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"subtype"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"category-of-threatid"}, {"value"=>"threat-type"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"sessions"}, {"value"=>"count"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaThsum def panorama_thsum @subclasses['panorama-thsum'] ||= PanoramaThsum.new(parent_instance: self, create_children: @create_children) end class PanoramaTraffic < ConfigClass def has_multiple_values? false end def _section :'panorama-traffic' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"category"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"nssai_sst"}, {"value"=>"nssai_sd"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"dynusergroup_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"session_owner"}, {"value"=>"policy_id"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"decrypt-mirror"}, {"value"=>"threat-type"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"sym-return"}, {"value"=>"sessionid"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"nunique-of-users"}, {"value"=>"elapsed"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"category"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"nssai_sst"}, {"value"=>"nssai_sd"}, {"value"=>"http2_connection"}, {"value"=>"xff_ip"}, {"value"=>"dynusergroup_name"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"session_owner"}, {"value"=>"policy_id"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"pbf-s2c"}, {"value"=>"pbf-c2s"}, {"value"=>"decrypt-mirror"}, {"value"=>"threat-type"}, {"value"=>"flag-nat"}, {"value"=>"flag-pcap"}, {"value"=>"captive-portal"}, {"value"=>"flag-proxy"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"sym-return"}, {"value"=>"sessionid"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"nunique-of-users"}, {"value"=>"elapsed"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTraffic def panorama_traffic @subclasses['panorama-traffic'] ||= PanoramaTraffic.new(parent_instance: self, create_children: @create_children) end class PanoramaUrlsum < ConfigClass def has_multiple_values? false end def _section :'panorama-urlsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"url_domain"}, {"value"=>"user_agent"}, {"value"=>"http_method"}, {"value"=>"http2_connection"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"rule_uuid"}, {"value"=>"xff_ip"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"url_category_list"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"category"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"url_domain"}, {"value"=>"user_agent"}, {"value"=>"http_method"}, {"value"=>"http2_connection"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"rule_uuid"}, {"value"=>"xff_ip"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"hostid"}, {"value"=>"dynusergroup_name"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"url_category_list"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaUrlsum def panorama_urlsum @subclasses['panorama-urlsum'] ||= PanoramaUrlsum.new(parent_instance: self, create_children: @create_children) end class PanoramaTrsum < ConfigClass def has_multiple_values? false end def _section :'panorama-trsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"xff_ip"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"category"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"assoc_id"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"s_decrypted"}, {"value"=>"s_encrypted"}, {"value"=>"hostid"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"standard-ports-of-app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"bytes"}, {"value"=>"sessions"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"nthreats"}, {"value"=>"nftrans"}, {"value"=>"ndpmatches"}, {"value"=>"nurlcount"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"ncontent"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"xff_ip"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"category"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"dev_serial"}, {"value"=>"dport"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"assoc_id"}, {"value"=>"http2_connection"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"s_decrypted"}, {"value"=>"s_encrypted"}, {"value"=>"hostid"}, {"value"=>"nssai_sst"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"dst_category"}, {"value"=>"dst_profile"}, {"value"=>"dst_model"}, {"value"=>"dst_vendor"}, {"value"=>"dst_osfamily"}, {"value"=>"dst_osversion"}, {"value"=>"dst_host"}, {"value"=>"dst_mac"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"tunnelid"}, {"value"=>"imsi"}, {"value"=>"monitortag"}, {"value"=>"imei"}, {"value"=>"standard-ports-of-app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"bytes"}, {"value"=>"sessions"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"nthreats"}, {"value"=>"nftrans"}, {"value"=>"ndpmatches"}, {"value"=>"nurlcount"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"ncontent"}, {"value"=>"nunique-of-apps"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-src_profile"}, {"value"=>"nunique-of-dst_profile"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTrsum def panorama_trsum @subclasses['panorama-trsum'] ||= PanoramaTrsum.new(parent_instance: self, create_children: @create_children) end class PanoramaGtp < ConfigClass def has_multiple_values? false end def _section :'panorama-gtp' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"end_ip_addr"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"cell_id"}, {"value"=>"event_code"}, {"value"=>"msg_type"}, {"value"=>"area_code"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"gtp_interface"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"imei"}, {"value"=>"imsi"}, {"value"=>"sessionid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"end_ip_addr"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"cell_id"}, {"value"=>"event_code"}, {"value"=>"msg_type"}, {"value"=>"area_code"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"gtp_interface"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"dynusergroup_name"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subcategory-of-app"}, {"value"=>"category-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"risk-of-app"}, {"value"=>"container-of-app"}, {"value"=>"imei"}, {"value"=>"imsi"}, {"value"=>"sessionid"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-users"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaGtp def panorama_gtp @subclasses['panorama-gtp'] ||= PanoramaGtp.new(parent_instance: self, create_children: @create_children) end class PanoramaGtpsum < ConfigClass def has_multiple_values? false end def _section :'panorama-gtpsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"action"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"msg_type"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"imei"}, {"value"=>"imsi"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"app"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"msisdn"}, {"value"=>"nssai_sd"}, {"value"=>"nssai_sst"}, {"value"=>"pdu_session_id"}, {"value"=>"apn"}, {"value"=>"cause_code"}, {"value"=>"mcc"}, {"value"=>"mnc"}, {"value"=>"action"}, {"value"=>"event_type"}, {"value"=>"severity"}, {"value"=>"rat"}, {"value"=>"msg_type"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"remote_user_ip"}, {"value"=>"remote_user_id"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"imei"}, {"value"=>"imsi"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaGtpsum def panorama_gtpsum @subclasses['panorama-gtpsum'] ||= PanoramaGtpsum.new(parent_instance: self, create_children: @create_children) end class PanoramaSctp < ConfigClass def has_multiple_values? false end def _section :'panorama-sctp' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"sctp_event_code"}, {"value"=>"verif_tag_1"}, {"value"=>"verif_tag_2"}, {"value"=>"sctp_cause_code"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"diam_avp_code"}, {"value"=>"stream_id"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sccp_calling_gt"}, {"value"=>"sctp_filter"}, {"value"=>"assoc_end_reason"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"sessionid"}, {"value"=>"assoc_id"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"natsrc"}, {"value"=>"natdst"}, {"value"=>"rule"}, {"value"=>"srcuser"}, {"value"=>"dstuser"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"app"}, {"value"=>"vsys"}, {"value"=>"from"}, {"value"=>"to"}, {"value"=>"inbound_if"}, {"value"=>"outbound_if"}, {"value"=>"sport"}, {"value"=>"dport"}, {"value"=>"natsport"}, {"value"=>"natdport"}, {"value"=>"proto"}, {"value"=>"action"}, {"value"=>"tunnel"}, {"value"=>"src_uuid"}, {"value"=>"dst_uuid"}, {"value"=>"rule_uuid"}, {"value"=>"s_encrypted"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"sctp_event_code"}, {"value"=>"verif_tag_1"}, {"value"=>"verif_tag_2"}, {"value"=>"sctp_cause_code"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"diam_avp_code"}, {"value"=>"stream_id"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sccp_calling_gt"}, {"value"=>"sctp_filter"}, {"value"=>"assoc_end_reason"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"sessionid"}, {"value"=>"assoc_id"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaSctp def panorama_sctp @subclasses['panorama-sctp'] ||= PanoramaSctp.new(parent_instance: self, create_children: @create_children) end class PanoramaSctpsum < ConfigClass def has_multiple_values? false end def _section :'panorama-sctpsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"action"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sctp_filter"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"app"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"src"}, {"value"=>"dst"}, {"value"=>"rule"}, {"value"=>"srcloc"}, {"value"=>"dstloc"}, {"value"=>"action"}, {"value"=>"vsys"}, {"value"=>"dev_serial"}, {"value"=>"assoc_id"}, {"value"=>"ppid"}, {"value"=>"severity"}, {"value"=>"sctp_chunk_type"}, {"value"=>"sctp_event_type"}, {"value"=>"diam_app_id"}, {"value"=>"diam_cmd_code"}, {"value"=>"op_code"}, {"value"=>"sccp_calling_ssn"}, {"value"=>"sctp_filter"}, {"value"=>"rule_uuid"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}, {"value"=>"container_id"}, {"value"=>"pod_namespace"}, {"value"=>"pod_name"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"app"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"chunks"}, {"value"=>"chunks_sent"}, {"value"=>"chunks_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"repeatcnt"}, {"value"=>"severity"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaSctpsum def panorama_sctpsum @subclasses['panorama-sctpsum'] ||= PanoramaSctpsum.new(parent_instance: self, create_children: @create_children) end class PanoramaTunnel < ConfigClass def has_multiple_values? false end def _section :'panorama-tunnel' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"flag-pcap"}, {"value"=>"flag-proxy"}, {"value"=>"flag-nat"}, {"value"=>"captive-portal"}, {"value"=>"non-std-dport"}, {"value"=>"transaction"}, {"value"=>"pbf-c2s"}, {"value"=>"pbf-s2c"}, {"value"=>"sym-return"}, {"value"=>"decrypt-mirror"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sessionid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"to"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"max_encap"}, {"value"=>"unknown_proto"}, {"value"=>"strict_check"}, {"value"=>"tunnel_fragment"}, {"value"=>"sessions_created"}, {"value"=>"sessions_closed"}, {"value"=>"nunique-of-users"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dport"}, {"value"=>"dst"}, {"value"=>"dstuser"}, {"value"=>"from"}, {"value"=>"inbound_if"}, {"value"=>"natdport"}, {"value"=>"natdst"}, {"value"=>"natsport"}, {"value"=>"natsrc"}, {"value"=>"outbound_if"}, {"value"=>"proto"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"sessionid"}, {"value"=>"sport"}, {"value"=>"src"}, {"value"=>"srcuser"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"to"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"session_end_reason"}, {"value"=>"action_source"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}, {"value"=>"packets"}, {"value"=>"pkts_sent"}, {"value"=>"pkts_received"}, {"value"=>"max_encap"}, {"value"=>"unknown_proto"}, {"value"=>"strict_check"}, {"value"=>"tunnel_fragment"}, {"value"=>"sessions_created"}, {"value"=>"sessions_closed"}, {"value"=>"nunique-of-users"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTunnel def panorama_tunnel @subclasses['panorama-tunnel'] ||= PanoramaTunnel.new(parent_instance: self, create_children: @create_children) end class PanoramaTunnelsum < ConfigClass def has_multiple_values? false end def _section :'panorama-tunnelsum' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"standard-ports-of-app"}, {"value"=>"dst"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"src"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"action"}, {"value"=>"app"}, {"value"=>"category-of-app"}, {"value"=>"dst"}, {"value"=>"risk-of-app"}, {"value"=>"rule"}, {"value"=>"rule_uuid"}, {"value"=>"src"}, {"value"=>"subcategory-of-app"}, {"value"=>"technology-of-app"}, {"value"=>"container-of-app"}, {"value"=>"dstloc"}, {"value"=>"srcloc"}, {"value"=>"vsys"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"day-of-receive_time"}, {"value"=>"serial"}, {"value"=>"device_name"}, {"value"=>"vsys_name"}, {"value"=>"tunnelid"}, {"value"=>"monitortag"}, {"value"=>"parent_session_id"}, {"value"=>"parent_start_time"}, {"value"=>"tunnel"}, {"value"=>"tunnel_insp_rule"}, {"value"=>"src_dag"}, {"value"=>"dst_dag"}, {"value"=>"src_edl"}, {"value"=>"dst_edl"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"bytes"}, {"value"=>"bytes_sent"}, {"value"=>"bytes_received"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaTunnelsum def panorama_tunnelsum @subclasses['panorama-tunnelsum'] ||= PanoramaTunnelsum.new(parent_instance: self, create_children: @create_children) end class PanoramaUserid < ConfigClass def has_multiple_values? false end def _section :'panorama-userid' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"datasourcename"}, {"value"=>"beginport"}, {"value"=>"endport"}, {"value"=>"datasource"}, {"value"=>"datasourcetype"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}, {"value"=>"factorno"}, {"value"=>"tag_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subtype"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"datasourcename"}, {"value"=>"beginport"}, {"value"=>"endport"}, {"value"=>"datasource"}, {"value"=>"datasourcetype"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}, {"value"=>"factorno"}, {"value"=>"tag_name"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"subtype"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"factortype"}, {"value"=>"factorcompletiontime"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaUserid def panorama_userid @subclasses['panorama-userid'] ||= PanoramaUserid.new(parent_instance: self, create_children: @create_children) end class PanoramaAuth < ConfigClass def has_multiple_values? false end def _section :'panorama-auth' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"normalize_user"}, {"value"=>"object"}, {"value"=>"authpolicy"}, {"value"=>"authid"}, {"value"=>"vendor"}, {"value"=>"clienttype"}, {"value"=>"event"}, {"value"=>"factorno"}, {"value"=>"authproto"}, {"value"=>"rule_uuid"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"user"}, {"value"=>"normalize_user"}, {"value"=>"object"}, {"value"=>"authpolicy"}, {"value"=>"authid"}, {"value"=>"vendor"}, {"value"=>"clienttype"}, {"value"=>"event"}, {"value"=>"factorno"}, {"value"=>"authproto"}, {"value"=>"rule_uuid"}, {"value"=>"src_category"}, {"value"=>"src_profile"}, {"value"=>"src_model"}, {"value"=>"src_vendor"}, {"value"=>"src_osfamily"}, {"value"=>"src_osversion"}, {"value"=>"src_host"}, {"value"=>"src_mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}, {"value"=>"serverprofile"}, {"value"=>"desc"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"time_generated"}, {"value"=>"vendor"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaAuth def panorama_auth @subclasses['panorama-auth'] ||= PanoramaAuth.new(parent_instance: self, create_children: @create_children) end class PanoramaIptag < ConfigClass def has_multiple_values? false end def _section :'panorama-iptag' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"tag_name"}, {"value"=>"event_id"}, {"value"=>"datasourcename"}, {"value"=>"datasource_type"}, {"value"=>"datasource_subtype"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"ip"}, {"value"=>"tag_name"}, {"value"=>"event_id"}, {"value"=>"datasourcename"}, {"value"=>"datasource_type"}, {"value"=>"datasource_subtype"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}, {"value"=>"time_generated"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaIptag def panorama_iptag @subclasses['panorama-iptag'] ||= PanoramaIptag.new(parent_instance: self, create_children: @create_children) end class PanoramaHipmatch__63 < ConfigClass def has_multiple_values? false end def _section :'panorama-hipmatch__63' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"repeatcnt"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"srcuser"}, {"value"=>"vsys"}, {"value"=>"machinename"}, {"value"=>"src"}, {"value"=>"matchname"}, {"value"=>"os"}, {"value"=>"matchtype"}, {"value"=>"srcipv6"}, {"value"=>"hostid"}, {"value"=>"mac"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"repeatcnt"}]}, "last-match-by"=>{"node-type"=>"element", "type"=>"enum", "optional"=>"yes"}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end def last_match_by prop_get('last-match-by') end def last_match_by=(val) prop_set('last-match-by', val) end end # class PanoramaHipmatch__63 def panorama_hipmatch__63 @subclasses['panorama-hipmatch__63'] ||= PanoramaHipmatch__63.new(parent_instance: self, create_children: @create_children) end class PanoramaGlobalprotect < ConfigClass def has_multiple_values? false end def _section :'panorama-globalprotect' end class AggregateBy < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-by' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AggregateBy def aggregate_by if @create_children @subclasses['aggregate-by'] ||= AggregateBy.new(parent_instance: self, create_children: @create_children) else AggregateBy.new(parent_instance: self) end end class Values < XML::ConfigClass def has_multiple_values? true end def _section :'values' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Values def values if @create_children @subclasses['values'] ||= Values.new(parent_instance: self, create_children: @create_children) else Values.new(parent_instance: self) end end class Labels < XML::ConfigClass def has_multiple_values? true end def _section :'labels' end @props={"member"=>{"node-type"=>"element", "type"=>"string"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Labels def labels if @create_children @subclasses['labels'] ||= Labels.new(parent_instance: self, create_children: @create_children) else Labels.new(parent_instance: self) end end @props={"group-by"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"serial"}, {"value"=>"time_generated"}, {"value"=>"vsys_name"}, {"value"=>"device_name"}, {"value"=>"vsys"}, {"value"=>"eventid"}, {"value"=>"status"}, {"value"=>"stage"}, {"value"=>"auth_method"}, {"value"=>"tunnel_type"}, {"value"=>"portal"}, {"value"=>"srcuser"}, {"value"=>"srcregion"}, {"value"=>"machinename"}, {"value"=>"public_ip"}, {"value"=>"public_ipv6"}, {"value"=>"private_ip"}, {"value"=>"private_ipv6"}, {"value"=>"hostid"}, {"value"=>"serialnumber"}, {"value"=>"client_ver"}, {"value"=>"client_os"}, {"value"=>"client_os_ver"}, {"value"=>"login_duration"}, {"value"=>"connect_method"}, {"value"=>"reason"}, {"value"=>"error_code"}, {"value"=>"error"}, {"value"=>"opaque"}, {"value"=>"gateway"}, {"value"=>"selection_type"}, {"value"=>"response_time"}, {"value"=>"priority"}, {"value"=>"attempted_gateways"}, {"value"=>"day-of-receive_time"}, {"value"=>"hour-of-receive_time"}, {"value"=>"quarter-hour-of-receive_time"}]}, "sortby"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"repeatcnt"}, {"value"=>"nunique-of-ips"}, {"value"=>"nunique-of-gateways"}, {"value"=>"nunique-of-users"}, {"value"=>"nunique-of-hostid"}]}} def group_by prop_get('group-by') end def group_by=(val) prop_set('group-by', val) end def sortby prop_get('sortby') end def sortby=(val) prop_set('sortby', val) end end # class PanoramaGlobalprotect def panorama_globalprotect @subclasses['panorama-globalprotect'] ||= PanoramaGlobalprotect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "query"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "caption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255"}, "frequency"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"daily"}]}, "start-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1]) ([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=>"Start Time e.g. 2008/01/01 09:00:00"}, "end-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1]) ([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=>"End Time e.g. 2008/12/31 11:59:59"}, "period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"last-15-minutes"}, {"value"=>"last-hour"}, {"value"=>"last-6-hrs"}, {"value"=>"last-12-hrs"}, {"value"=>"last-24-hrs"}, {"value"=>"last-calendar-day"}, {"value"=>"last-7-days"}, {"value"=>"last-7-calendar-days"}, {"value"=>"last-calendar-week"}, {"value"=>"last-30-days"}, {"value"=>"last-30-calendar-days"}, {"value"=>"last-60-days"}, {"value"=>"last-60-calendar-days"}, {"value"=>"last-90-days"}, {"value"=>"last-90-calendar-days"}, {"value"=>"last-calendar-month"}]}, "topn"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"10000", "default"=>"10"}, "topm"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"50", "default"=>"10"}, "include-others"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "internal"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end def query prop_get('query') end def query=(val) prop_set('query', val) end def caption prop_get('caption') end def caption=(val) prop_set('caption', val) end def frequency prop_get('frequency') end def frequency=(val) prop_set('frequency', val) end # Start Time e.g. 2008/01/01 09:00:00 def start_time prop_get('start-time') end # Start Time e.g. 2008/01/01 09:00:00 def start_time=(val) prop_set('start-time', val) end # End Time e.g. 2008/12/31 11:59:59 def end_time prop_get('end-time') end # End Time e.g. 2008/12/31 11:59:59 def end_time=(val) prop_set('end-time', val) end def period prop_get('period') end def period=(val) prop_set('period', val) end def topn prop_get('topn') end def topn=(val) prop_set('topn', val) end def topm prop_get('topm') end def topm=(val) prop_set('topm', val) end def include_others prop_get('include-others') end def include_others=(val) prop_set('include-others', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Reports def reports if @create_children @subclasses['reports'] ||= Reports.new(parent_instance: self, create_children: @create_children) else Reports.new(parent_instance: self) end end class ReportGroup < XML::ConfigClass def has_multiple_values? true end def _section :'report-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class All < XML::ConfigClass def has_multiple_values? true end def _section :'all' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end class UserGroups < XML::ConfigClass def has_multiple_values? true end def _section :'user-groups' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "max-count"=>"25"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserGroups def user_groups if @create_children @subclasses['user-groups'] ||= UserGroups.new(parent_instance: self, create_children: @create_children) else UserGroups.new(parent_instance: self) end end @props={"include-user-groups-info"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} def include_user_groups_info prop_get('include-user-groups-info') end def include_user_groups_info=(val) prop_set('include-user-groups-info', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class All def all if @create_children @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) else All.new(parent_instance: self) end end class SelectedZone < XML::ConfigClass def has_multiple_values? true end def _section :'selected-zone' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end class UserGroups < XML::ConfigClass def has_multiple_values? true end def _section :'user-groups' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "max-count"=>"25"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserGroups def user_groups if @create_children @subclasses['user-groups'] ||= UserGroups.new(parent_instance: self, create_children: @create_children) else UserGroups.new(parent_instance: self) end end @props={"include-user-groups-info"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "zone"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/template/entry/config/devices/entry/vsys/entry/zone/entry/@name", "#mytemplates/#myentry(device-group)/zone/entry/@name"]}} def include_user_groups_info prop_get('include-user-groups-info') end def include_user_groups_info=(val) prop_set('include-user-groups-info', val) end def zone prop_get('zone') end def zone=(val) prop_set('zone', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelectedZone def selected_zone if @create_children @subclasses['selected-zone'] ||= SelectedZone.new(parent_instance: self, create_children: @create_children) else SelectedZone.new(parent_instance: self) end end class SelectedUserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'selected-user-group' end class Entry < ConfigClass def has_multiple_values? false end def _section :'entry' end @props={"user-group"=> {"node-type"=>"element", "help-string"=>"user-group", "type"=>"string", "maxlen"=>"63"}} # user-group def user_group prop_get('user-group') end # user-group def user_group=(val) prop_set('user-group', val) end end # class Entry def entry @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelectedUserGroup def selected_user_group if @create_children @subclasses['selected-user-group'] ||= SelectedUserGroup.new(parent_instance: self, create_children: @create_children) else SelectedUserGroup.new(parent_instance: self) end end class Variable < XML::ConfigClass def has_multiple_values? true end def _section :'variable' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "value"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "complete-handler"=>"pan-rpt-grp-saas-completer", "autocomplete"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Variable def variable if @create_children @subclasses['variable'] ||= Variable.new(parent_instance: self, create_children: @create_children) else Variable.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "title-page"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def title_page prop_get('title-page') end def title_page=(val) prop_set('title-page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ReportGroup def report_group if @create_children @subclasses['report-group'] ||= ReportGroup.new(parent_instance: self, create_children: @create_children) else ReportGroup.new(parent_instance: self) end end class PdfSummaryReport < XML::ConfigClass def has_multiple_values? true end def _section :'pdf-summary-report' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Header < ConfigClass def has_multiple_values? false end def _section :'header' end @props={"caption"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Caption for the layout"}} # Caption for the layout def caption prop_get('caption') end # Caption for the layout def caption=(val) prop_set('caption', val) end end # class Header def header @subclasses['header'] ||= Header.new(parent_instance: self, create_children: @create_children) end class Footer < ConfigClass def has_multiple_values? false end def _section :'footer' end @props={"note"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"static string to be printed as a note"}} # static string to be printed as a note def note prop_get('note') end # static string to be printed as a note def note=(val) prop_set('note', val) end end # class Footer def footer @subclasses['footer'] ||= Footer.new(parent_instance: self, create_children: @create_children) end class CustomWidget < XML::ConfigClass def has_multiple_values? true end def _section :'custom-widget' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#myentry(device-group)/reports/entry/@name"]}, "chart-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"table", "enum"=> [{"value"=>"pie"}, {"value"=>"line"}, {"value"=>"bar"}, {"value"=>"table"}]}, "row"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"6"}, "column"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def chart_type prop_get('chart-type') end def chart_type=(val) prop_set('chart-type', val) end def row prop_get('row') end def row=(val) prop_set('row', val) end def column prop_get('column') end def column=(val) prop_set('column', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CustomWidget def custom_widget if @create_children @subclasses['custom-widget'] ||= CustomWidget.new(parent_instance: self, create_children: @create_children) else CustomWidget.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PdfSummaryReport def pdf_summary_report if @create_children @subclasses['pdf-summary-report'] ||= PdfSummaryReport.new(parent_instance: self, create_children: @create_children) else PdfSummaryReport.new(parent_instance: self) end end class EmailScheduler < XML::ConfigClass def has_multiple_values? true end def _section :'email-scheduler' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Recurring < XML::ConfigClass def has_multiple_values? true end def _section :'recurring' end class Disabled < ConfigClass def has_multiple_values? false end def _section :'disabled' end @props={} end # class Disabled def disabled @subclasses['disabled'] ||= Disabled.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={} end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end @props={"weekly"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"Once a week", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "monthly"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"31", "help-string"=>"Once a month"}} # Once a week def weekly prop_get('weekly') end # Once a week def weekly=(val) prop_set('weekly', val) end # Once a month def monthly prop_get('monthly') end # Once a month def monthly=(val) prop_set('monthly', val) end end # class Recurring def recurring if @create_children @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) else Recurring.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "report-group"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#myentry(device-group)/report-group/entry/@name|#config/shared/report-group/entry/@name"]}, "email-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/email/entry/@name", "#config/panorama/log-settings/email/entry/@name", "#myentry(device-group)/log-settings/email/entry/@name"]}, "recipient-emails"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"512", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def report_group prop_get('report-group') end def report_group=(val) prop_set('report-group', val) end def email_profile prop_get('email-profile') end def email_profile=(val) prop_set('email-profile', val) end def recipient_emails prop_get('recipient-emails') end def recipient_emails=(val) prop_set('recipient-emails', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class EmailScheduler def email_scheduler if @create_children @subclasses['email-scheduler'] ||= EmailScheduler.new(parent_instance: self, create_children: @create_children) else EmailScheduler.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Description"}, "authorization-code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Authorization code"}, "to-sw-version"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"None", "help-string"=> "Automatically upgrade software to this version for new deployments", "multi-types"=> {"string"=> {"maxlen"=>"64", "regex"=>"^PanOS_vm-[0-9]+\\.[0-9]+\\.[0-9]+", "optional"=>"yes", "complete-handler"=>"get-svm-upgradable-version"}, "enum"=>[{"value"=>"None"}]}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Description def description prop_get('description') end # Description def description=(val) prop_set('description', val) end # Authorization code def authorization_code prop_get('authorization-code') end # Authorization code def authorization_code=(val) prop_set('authorization-code', val) end # Automatically upgrade software to this version for new deployments def to_sw_version prop_get('to-sw-version') end # Automatically upgrade software to this version for new deployments def to_sw_version=(val) prop_set('to-sw-version', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DeviceGroup def device_group if @create_children @subclasses['device-group'] ||= DeviceGroup.new(parent_instance: self, create_children: @create_children) else DeviceGroup.new(parent_instance: self) end end class Template < XML::ConfigClass def has_multiple_values? true end def _section :'template' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Settings < ConfigClass def has_multiple_values? false end def _section :'settings' end @props={"default-vsys"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Default virtual system", "autocomplete"=>"yes", "memberof"=>["../../../config/devices/entry/vsys/entry/@name"]}} # Default virtual system def default_vsys prop_get('default-vsys') end # Default virtual system def default_vsys=(val) prop_set('default-vsys', val) end end # class Settings def settings @subclasses['settings'] ||= Settings.new(parent_instance: self, create_children: @create_children) end class Variable < XML::ConfigClass def has_multiple_values? true end def _section :'variable' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"ip-netmask"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "enum"=>[{"value"=>"None"}]}}, "ip-range"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"iprangespec"=>{}, "enum"=>[{"value"=>"None"}]}}, "fqdn"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$"}, "enum"=>[{"value"=>"None"}]}}, "group-id"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"63"}, "enum"=>[{"value"=>"None"}]}}, "device-priority"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"255"}, "enum"=>[{"value"=>"None"}]}}, "device-id"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"1"}, "enum"=>[{"value"=>"None"}]}}, "interface"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"None"}]}}, "as-number"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "string"=>{"regex"=>"^[0-9]{1,5}\\.[0-9]{1,5}$", "maxlen"=>"11"}, "enum"=>[{"value"=>"None"}]}}, "qos-profile"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=>{"minlen"=>"1", "maxlen"=>"31", "regex"=>"^([0-9a-zA-Z._-])+$"}, "enum"=>[{"value"=>"None"}]}}, "egress-max"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"float"=>{"min"=>"0", "max"=>"60000"}, "enum"=>[{"value"=>"None"}]}}, "link-tag"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=>{"minlen"=>"1", "maxlen"=>"127"}, "enum"=>[{"value"=>"None"}]}}} def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end def group_id prop_get('group-id') end def group_id=(val) prop_set('group-id', val) end def device_priority prop_get('device-priority') end def device_priority=(val) prop_set('device-priority', val) end def device_id prop_get('device-id') end def device_id=(val) prop_set('device-id', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end def as_number prop_get('as-number') end def as_number=(val) prop_set('as-number', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def egress_max prop_get('egress-max') end def egress_max=(val) prop_set('egress-max', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "regex"=>"^\\$([a-zA-Z0-9._-])+$", "help-string"=>"Variables need to begin with '$'"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Description"}} # Variables need to begin with '$' def name prop_get('@name') end # Description def description prop_get('description') end # Description def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Variable def variable if @create_children @subclasses['variable'] ||= Variable.new(parent_instance: self, create_children: @create_children) else Variable.new(parent_instance: self) end end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MgtConfig < ConfigClass def has_multiple_values? false end def _section :'mgt-config' end class PasswordComplexity < ConfigClass def has_multiple_values? false end def _section :'password-complexity' end class PasswordChange < ConfigClass def has_multiple_values? false end def _section :'password-change' end @props={"expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"365", "default"=>"0", "help-string"=>"Password expiry days"}, "expiration-warning-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password expiry warning period"}, "post-expiration-admin-login-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3", "default"=>"0", "help-string"=>"Password post-expiry admin login count"}, "post-expiration-grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password post-expiry grace period"}} # Password expiry days def expiration_period prop_get('expiration-period') end # Password expiry days def expiration_period=(val) prop_set('expiration-period', val) end # Password expiry warning period def expiration_warning_period prop_get('expiration-warning-period') end # Password expiry warning period def expiration_warning_period=(val) prop_set('expiration-warning-period', val) end # Password post-expiry admin login count def post_expiration_admin_login_count prop_get('post-expiration-admin-login-count') end # Password post-expiry admin login count def post_expiration_admin_login_count=(val) prop_set('post-expiration-admin-login-count', val) end # Password post-expiry grace period def post_expiration_grace_period prop_get('post-expiration-grace-period') end # Password post-expiry grace period def post_expiration_grace_period=(val) prop_set('post-expiration-grace-period', val) end end # class PasswordChange def password_change @subclasses['password-change'] ||= PasswordChange.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable minimal password complexity enforcement"}, "block-username-inclusion"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Block inclusion of username and it's reverse"}, "password-change-on-first-login"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Password must change on first time login"}, "minimum-length__5"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "type"=>"rangedint", "min"=>"6", "max"=>"15", "optional"=>"yes", "default"=>"6", "help-string"=>"Minimum password length"}, "minimum-length__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum password length"}, "minimum-uppercase-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum uppercase letters in the password"}, "minimum-lowercase-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum lowercase letters in the password"}, "minimum-numeric-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum numeric(0-9) letters in the password"}, "minimum-special-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "default"=>"0", "optional"=>"yes", "help-string"=> "Minimum special characters(non-alphanumeric) in the password"}, "block-repeated-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "default"=>"0", "optional"=>"yes", "help-string"=>"Block repeated characters count"}, "password-history-count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"150", "default"=>"0", "optional"=>"yes", "help-string"=>"Save password history for password changes"}, "new-password-differs-by-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"New Password must differ by the count chars"}, "password-change-period-block"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"365", "optional"=>"yes", "default"=>"0", "help-string"=>"Password change block period"}} # Enable minimal password complexity enforcement def enabled prop_get('enabled') end # Enable minimal password complexity enforcement def enabled=(val) prop_set('enabled', val) end # Block inclusion of username and it's reverse def block_username_inclusion prop_get('block-username-inclusion') end # Block inclusion of username and it's reverse def block_username_inclusion=(val) prop_set('block-username-inclusion', val) end # Password must change on first time login def password_change_on_first_login prop_get('password-change-on-first-login') end # Password must change on first time login def password_change_on_first_login=(val) prop_set('password-change-on-first-login', val) end # Minimum password length def minimum_length__5 prop_get('minimum-length__5') end # Minimum password length def minimum_length__5=(val) prop_set('minimum-length__5', val) end # Minimum password length def minimum_length__6 prop_get('minimum-length__6') end # Minimum password length def minimum_length__6=(val) prop_set('minimum-length__6', val) end # Minimum uppercase letters in the password def minimum_uppercase_letters prop_get('minimum-uppercase-letters') end # Minimum uppercase letters in the password def minimum_uppercase_letters=(val) prop_set('minimum-uppercase-letters', val) end # Minimum lowercase letters in the password def minimum_lowercase_letters prop_get('minimum-lowercase-letters') end # Minimum lowercase letters in the password def minimum_lowercase_letters=(val) prop_set('minimum-lowercase-letters', val) end # Minimum numeric(0-9) letters in the password def minimum_numeric_letters prop_get('minimum-numeric-letters') end # Minimum numeric(0-9) letters in the password def minimum_numeric_letters=(val) prop_set('minimum-numeric-letters', val) end # Minimum special characters(non-alphanumeric) in the password def minimum_special_characters prop_get('minimum-special-characters') end # Minimum special characters(non-alphanumeric) in the password def minimum_special_characters=(val) prop_set('minimum-special-characters', val) end # Block repeated characters count def block_repeated_characters prop_get('block-repeated-characters') end # Block repeated characters count def block_repeated_characters=(val) prop_set('block-repeated-characters', val) end # Save password history for password changes def password_history_count prop_get('password-history-count') end # Save password history for password changes def password_history_count=(val) prop_set('password-history-count', val) end # New Password must differ by the count chars def new_password_differs_by_characters prop_get('new-password-differs-by-characters') end # New Password must differ by the count chars def new_password_differs_by_characters=(val) prop_set('new-password-differs-by-characters', val) end # Password change block period def password_change_period_block prop_get('password-change-period-block') end # Password change block period def password_change_period_block=(val) prop_set('password-change-period-block', val) end end # class PasswordComplexity def password_complexity @subclasses['password-complexity'] ||= PasswordComplexity.new(parent_instance: self, create_children: @create_children) end class PasswordProfile < XML::ConfigClass def has_multiple_values? true end def _section :'password-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PasswordChange < ConfigClass def has_multiple_values? false end def _section :'password-change' end @props={"expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"365", "default"=>"0", "help-string"=>"Password expiry days"}, "expiration-warning-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password expiry warning period"}, "post-expiration-admin-login-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3", "default"=>"0", "help-string"=>"Password post-expiry admin login count"}, "post-expiration-grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password post-expiry grace period"}} # Password expiry days def expiration_period prop_get('expiration-period') end # Password expiry days def expiration_period=(val) prop_set('expiration-period', val) end # Password expiry warning period def expiration_warning_period prop_get('expiration-warning-period') end # Password expiry warning period def expiration_warning_period=(val) prop_set('expiration-warning-period', val) end # Password post-expiry admin login count def post_expiration_admin_login_count prop_get('post-expiration-admin-login-count') end # Password post-expiry admin login count def post_expiration_admin_login_count=(val) prop_set('post-expiration-admin-login-count', val) end # Password post-expiry grace period def post_expiration_grace_period prop_get('post-expiration-grace-period') end # Password post-expiry grace period def post_expiration_grace_period=(val) prop_set('post-expiration-grace-period', val) end end # class PasswordChange def password_change @subclasses['password-change'] ||= PasswordChange.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[A-Za-z][[A-Za-z0-9._-]*$", "help-string"=>"Alphanumeric string starting with an Alphabet"}} # Alphanumeric string starting with an Alphabet def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PasswordProfile def password_profile if @create_children @subclasses['password-profile'] ||= PasswordProfile.new(parent_instance: self, create_children: @create_children) else PasswordProfile.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Preferences < ConfigClass def has_multiple_values? false end def _section :'preferences' end class SavedLogQuery < ConfigClass def has_multiple_values? false end def _section :'saved-log-query' end class Unified < XML::ConfigClass def has_multiple_values? true end def _section :'unified' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Unified def unified if @create_children @subclasses['unified'] ||= Unified.new(parent_instance: self, create_children: @create_children) else Unified.new(parent_instance: self) end end class Traffic < XML::ConfigClass def has_multiple_values? true end def _section :'traffic' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Traffic def traffic if @create_children @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) else Traffic.new(parent_instance: self) end end class Threat < XML::ConfigClass def has_multiple_values? true end def _section :'threat' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Threat def threat if @create_children @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) else Threat.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Url < XML::ConfigClass def has_multiple_values? true end def _section :'url' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Url def url if @create_children @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) else Url.new(parent_instance: self) end end class Data < XML::ConfigClass def has_multiple_values? true end def _section :'data' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Data def data if @create_children @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) else Data.new(parent_instance: self) end end class Config < XML::ConfigClass def has_multiple_values? true end def _section :'config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Config def config if @create_children @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) else Config.new(parent_instance: self) end end class System < XML::ConfigClass def has_multiple_values? true end def _section :'system' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class System def system if @create_children @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) else System.new(parent_instance: self) end end class Wildfire < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Wildfire def wildfire if @create_children @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) else Wildfire.new(parent_instance: self) end end class Hipmatch < XML::ConfigClass def has_multiple_values? true end def _section :'hipmatch' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Hipmatch def hipmatch if @create_children @subclasses['hipmatch'] ||= Hipmatch.new(parent_instance: self, create_children: @create_children) else Hipmatch.new(parent_instance: self) end end class Corr < XML::ConfigClass def has_multiple_values? true end def _section :'corr' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Corr def corr if @create_children @subclasses['corr'] ||= Corr.new(parent_instance: self, create_children: @create_children) else Corr.new(parent_instance: self) end end class Tunnel < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tunnel def tunnel if @create_children @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) else Tunnel.new(parent_instance: self) end end class Userid < XML::ConfigClass def has_multiple_values? true end def _section :'userid' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Userid def userid if @create_children @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) else Userid.new(parent_instance: self) end end class Auth < XML::ConfigClass def has_multiple_values? true end def _section :'auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Auth def auth if @create_children @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) else Auth.new(parent_instance: self) end end class Globalprotect < XML::ConfigClass def has_multiple_values? true end def _section :'globalprotect' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Globalprotect def globalprotect if @create_children @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) else Globalprotect.new(parent_instance: self) end end class Alarm < XML::ConfigClass def has_multiple_values? true end def _section :'alarm' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Alarm def alarm if @create_children @subclasses['alarm'] ||= Alarm.new(parent_instance: self, create_children: @create_children) else Alarm.new(parent_instance: self) end end class Decryption < XML::ConfigClass def has_multiple_values? true end def _section :'decryption' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decryption def decryption if @create_children @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) else Decryption.new(parent_instance: self) end end @props={} end # class SavedLogQuery def saved_log_query @subclasses['saved-log-query'] ||= SavedLogQuery.new(parent_instance: self, create_children: @create_children) end @props={"disable-dns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def disable_dns prop_get('disable-dns') end def disable_dns=(val) prop_set('disable-dns', val) end end # class Preferences def preferences @subclasses['preferences'] ||= Preferences.new(parent_instance: self, create_children: @create_children) end class Permissions < XML::ConfigClass def has_multiple_values? true end def _section :'permissions' end class RoleBased < XML::ConfigClass def has_multiple_values? true end def _section :'role-based' end class Vsysreader < XML::ConfigClass def has_multiple_values? true end def _section :'vsysreader' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/@name|#config/devices/entry/@name", "#config/devices/entry/@name|#config/devices/entry/@name"]}} # Device name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsysreader def vsysreader if @create_children @subclasses['vsysreader'] ||= Vsysreader.new(parent_instance: self, create_children: @create_children) else Vsysreader.new(parent_instance: self) end end class Vsysadmin < XML::ConfigClass def has_multiple_values? true end def _section :'vsysadmin' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/@name|#config/devices/entry/@name", "#config/devices/entry/@name|#config/devices/entry/@name"]}} # Device name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsysadmin def vsysadmin if @create_children @subclasses['vsysadmin'] ||= Vsysadmin.new(parent_instance: self, create_children: @create_children) else Vsysadmin.new(parent_instance: self) end end class Devicereader < XML::ConfigClass def has_multiple_values? true end def _section :'devicereader' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devicereader def devicereader if @create_children @subclasses['devicereader'] ||= Devicereader.new(parent_instance: self, create_children: @create_children) else Devicereader.new(parent_instance: self) end end class Deviceadmin < XML::ConfigClass def has_multiple_values? true end def _section :'deviceadmin' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Deviceadmin def deviceadmin if @create_children @subclasses['deviceadmin'] ||= Deviceadmin.new(parent_instance: self, create_children: @create_children) else Deviceadmin.new(parent_instance: self) end end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry/@name", "#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["##/predefined/admin-role/entry[role/device]/@name", "##/predefined/admin-role/entry[role/device]/@name"]}} def profile prop_get('profile') end def profile=(val) prop_set('profile', val) end end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"superreader"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}, "superuser"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}, "panorama-admin"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}} def superreader prop_get('superreader') end def superreader=(val) prop_set('superreader', val) end def superuser prop_get('superuser') end def superuser=(val) prop_set('superuser', val) end def panorama_admin prop_get('panorama-admin') end def panorama_admin=(val) prop_set('panorama-admin', val) end end # class RoleBased def role_based if @create_children @subclasses['role-based'] ||= RoleBased.new(parent_instance: self, create_children: @create_children) else RoleBased.new(parent_instance: self) end end @props={} end # class Permissions def permissions if @create_children @subclasses['permissions'] ||= Permissions.new(parent_instance: self, create_children: @create_children) else Permissions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[a-zA-Z0-9_.-]+$", "maxlen"=>"31", "help-string"=>"user name (alphanumeric)"}, "phash"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "password-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/password-profile/entry/@name"]}, "client-certificate-only"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Is client certificate authentication enough?"}, "public-key"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"4096", "help-string"=>"Public RSA/DSA"}} # user name (alphanumeric) def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def password_profile prop_get('password-profile') end def password_profile=(val) prop_set('password-profile', val) end # Is client certificate authentication enough? def client_certificate_only prop_get('client-certificate-only') end # Is client certificate authentication enough? def client_certificate_only=(val) prop_set('client-certificate-only', val) end # Public RSA/DSA def public_key prop_get('public-key') end # Public RSA/DSA def public_key=(val) prop_set('public-key', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end class AccessDomain < XML::ConfigClass def has_multiple_values? true end def _section :'access-domain' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry/@name", "#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AccessDomain def access_domain if @create_children @subclasses['access-domain'] ||= AccessDomain.new(parent_instance: self, create_children: @create_children) else AccessDomain.new(parent_instance: self) end end @props={} end # class MgtConfig def mgt_config @subclasses['mgt-config'] ||= MgtConfig.new(parent_instance: self, create_children: @create_children) end class Shared < ConfigClass def has_multiple_values? false end def _section :'shared' end class GlobalProtect__1 < ConfigClass def has_multiple_values? false end def _section :'global-protect__1' end class ClientlessApp < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application name"}, "application-home-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([A-Za-z0-9_\\.~!\\*'\\(\\);:@=\\+\\$,/\\?#%\\&-]|\\[|\\])+$", "maxlen"=>"4095", "help-string"=>"Home URL of application"}, "description"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"Description for application"}, "app-icon"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"180000", "optional"=>"yes", "help-string"=>"application icon"}} # clientless vpn application name def name prop_get('@name') end # Home URL of application def application_home_url prop_get('application-home-url') end # Home URL of application def application_home_url=(val) prop_set('application-home-url', val) end # Description for application def description prop_get('description') end # Description for application def description=(val) prop_set('description', val) end # application icon def app_icon prop_get('app-icon') end # application icon def app_icon=(val) prop_set('app-icon', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessApp def clientless_app if @create_children @subclasses['clientless-app'] ||= ClientlessApp.new(parent_instance: self, create_children: @create_children) else ClientlessApp.new(parent_instance: self) end end class ClientlessAppGroup < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"200", "autocomplete"=>"yes", "memberof"=>["#config/shared/global-protect/clientless-app/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application group name"}} # clientless vpn application group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessAppGroup def clientless_app_group if @create_children @subclasses['clientless-app-group'] ||= ClientlessAppGroup.new(parent_instance: self, create_children: @create_children) else ClientlessAppGroup.new(parent_instance: self) end end @props={} end # class GlobalProtect__1 def global_protect__1 @subclasses['global-protect__1'] ||= GlobalProtect__1.new(parent_instance: self, create_children: @create_children) end class AuthenticationProfile < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SingleSignOn < ConfigClass def has_multiple_values? false end def _section :'single-sign-on' end @props={"realm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Kerberos realm to be used for authentication"}, "service-principal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^([:/a-zA-Z0-9._-])+$", "help-string"=>"Kerberos service principal"}, "kerberos-keytab"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"8192", "encrypt"=>"yes", "help-string"=>"Kerberos keytab"}} # Kerberos realm to be used for authentication def realm prop_get('realm') end # Kerberos realm to be used for authentication def realm=(val) prop_set('realm', val) end # Kerberos service principal def service_principal prop_get('service-principal') end # Kerberos service principal def service_principal=(val) prop_set('service-principal', val) end # Kerberos keytab def kerberos_keytab prop_get('kerberos-keytab') end # Kerberos keytab def kerberos_keytab=(val) prop_set('kerberos-keytab', val) end end # class SingleSignOn def single_sign_on @subclasses['single-sign-on'] ||= SingleSignOn.new(parent_instance: self, create_children: @create_children) end class Lockout < ConfigClass def has_multiple_values? false end def _section :'lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"0", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class Lockout def lockout @subclasses['lockout'] ||= Lockout.new(parent_instance: self, create_children: @create_children) end class AllowList < XML::ConfigClass def has_multiple_values? true end def _section :'allow-list' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name"], "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"1023"}, "enum"=>[{"value"=>"all", "help-string"=>"all user and user groups"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AllowList def allow_list if @create_children @subclasses['allow-list'] ||= AllowList.new(parent_instance: self, create_children: @create_children) else AllowList.new(parent_instance: self) end end class Method < XML::ConfigClass def has_multiple_values? true end def _section :'method' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class LocalDatabase < ConfigClass def has_multiple_values? false end def _section :'local-database' end @props={} end # class LocalDatabase def local_database @subclasses['local-database'] ||= LocalDatabase.new(parent_instance: self, create_children: @create_children) end class Radius < ConfigClass def has_multiple_values? false end def _section :'radius' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"RADIUS server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/radius/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from RADIUS"}} # RADIUS server profile object def server_profile prop_get('server-profile') end # RADIUS server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from RADIUS def checkgroup prop_get('checkgroup') end # Retrieve user group from RADIUS def checkgroup=(val) prop_set('checkgroup', val) end end # class Radius def radius @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) end class Ldap < ConfigClass def has_multiple_values? false end def _section :'ldap' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/ldap/entry/@name"]}, "login-attribute"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "Default is samAccountName for Active Directory, uid for other directory servers"}, "passwd-exp-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "optional"=>"yes", "help-string"=>"Avail for Active Directory, eDir", "default"=>"7"}} # LDAP server profile object def server_profile prop_get('server-profile') end # LDAP server profile object def server_profile=(val) prop_set('server-profile', val) end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute prop_get('login-attribute') end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute=(val) prop_set('login-attribute', val) end # Avail for Active Directory, eDir def passwd_exp_days prop_get('passwd-exp-days') end # Avail for Active Directory, eDir def passwd_exp_days=(val) prop_set('passwd-exp-days', val) end end # class Ldap def ldap @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) end class Kerberos__5 < ConfigClass def has_multiple_values? false end def _section :'kerberos__5' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/kerberos/entry/@name"]}, "realm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Realm name to be used for authentication"}} # Kerberos server profile object def server_profile prop_get('server-profile') end # Kerberos server profile object def server_profile=(val) prop_set('server-profile', val) end # Realm name to be used for authentication def realm prop_get('realm') end # Realm name to be used for authentication def realm=(val) prop_set('realm', val) end end # class Kerberos__5 def kerberos__5 @subclasses['kerberos__5'] ||= Kerberos__5.new(parent_instance: self, create_children: @create_children) end class Tacplus < ConfigClass def has_multiple_values? false end def _section :'tacplus' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"TACACS+ server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/tacplus/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from TACACS+"}} # TACACS+ server profile object def server_profile prop_get('server-profile') end # TACACS+ server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from TACACS+ def checkgroup prop_get('checkgroup') end # Retrieve user group from TACACS+ def checkgroup=(val) prop_set('checkgroup', val) end end # class Tacplus def tacplus @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) end class SamlIdp < ConfigClass def has_multiple_values? false end def _section :'saml-idp' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"IdP server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/saml-idp/entry/@name"]}, "enable-single-logout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable single logout"}, "request-signing-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "complete-handler"=>"check-cert-fields-completer", "help-string"=>"Signing certificate for SAML requests", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Certificate profile for IDP and SP", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}, "attribute-name-username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response", "uiHint-fieldLabel"=>"Username Attribute"}, "attribute-name-usergroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup", "uiHint-fieldLabel"=>"User Group Attribute"}, "attribute-name-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role", "uiHint-fieldLabel"=>"Admin Role Attribute"}, "attribute-name-access-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain", "uiHint-fieldLabel"=>"Access Domain Attribute"}} # IdP server profile object def server_profile prop_get('server-profile') end # IdP server profile object def server_profile=(val) prop_set('server-profile', val) end # Enable single logout def enable_single_logout prop_get('enable-single-logout') end # Enable single logout def enable_single_logout=(val) prop_set('enable-single-logout', val) end # Signing certificate for SAML requests def request_signing_certificate prop_get('request-signing-certificate') end # Signing certificate for SAML requests def request_signing_certificate=(val) prop_set('request-signing-certificate', val) end # Certificate profile for IDP and SP def certificate_profile prop_get('certificate-profile') end # Certificate profile for IDP and SP def certificate_profile=(val) prop_set('certificate-profile', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username prop_get('attribute-name-username') end # Attribute name for username to be extracted from SAML response def attribute_name_username=(val) prop_set('attribute-name-username', val) end # usergroup def attribute_name_usergroup prop_get('attribute-name-usergroup') end # usergroup def attribute_name_usergroup=(val) prop_set('attribute-name-usergroup', val) end # admin-role def attribute_name_admin_role prop_get('attribute-name-admin-role') end # admin-role def attribute_name_admin_role=(val) prop_set('attribute-name-admin-role', val) end # access-domain def attribute_name_access_domain prop_get('attribute-name-access-domain') end # access-domain def attribute_name_access_domain=(val) prop_set('attribute-name-access-domain', val) end end # class SamlIdp def saml_idp @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Method def method if @create_children @subclasses['method'] ||= Method.new(parent_instance: self, create_children: @create_children) else Method.new(parent_instance: self) end end class MultiFactorAuth < ConfigClass def has_multiple_values? false end def _section :'multi-factor-auth' end class Factors < XML::ConfigClass def has_multiple_values? true end def _section :'factors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "max-count"=>"3", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/mfa-server-profile/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Factors def factors if @create_children @subclasses['factors'] ||= Factors.new(parent_instance: self, create_children: @create_children) else Factors.new(parent_instance: self) end end @props={"mfa-enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable Additional Authentication Factors"}} # Enable Additional Authentication Factors def mfa_enable prop_get('mfa-enable') end # Enable Additional Authentication Factors def mfa_enable=(val) prop_set('mfa-enable', val) end end # class MultiFactorAuth def multi_factor_auth @subclasses['multi-factor-auth'] ||= MultiFactorAuth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Group name"}, "username-modifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"%USERINPUT%", "help-string"=>"Username modifier(Not for SAML) to handle user domain", "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"127"}, "enum"=> [{"value"=>"%USERINPUT%"}, {"value"=>"%USERINPUT%@%USERDOMAIN%"}, {"value"=>"%USERDOMAIN%\\%USERINPUT%"}]}}, "user-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "regex"=> "^[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|\\.]{1}[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|]{0,62}$", "help-string"=>"Domain name(Not for SAML) to be used for authentication"}} # Group name def name prop_get('@name') end # Username modifier(Not for SAML) to handle user domain def username_modifier prop_get('username-modifier') end # Username modifier(Not for SAML) to handle user domain def username_modifier=(val) prop_set('username-modifier', val) end # Domain name(Not for SAML) to be used for authentication def user_domain prop_get('user-domain') end # Domain name(Not for SAML) to be used for authentication def user_domain=(val) prop_set('user-domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationProfile def authentication_profile if @create_children @subclasses['authentication-profile'] ||= AuthenticationProfile.new(parent_instance: self, create_children: @create_children) else AuthenticationProfile.new(parent_instance: self) end end class AuthenticationSequence < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-sequence' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AuthenticationProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationProfiles def authentication_profiles if @create_children @subclasses['authentication-profiles'] ||= AuthenticationProfiles.new(parent_instance: self, create_children: @create_children) else AuthenticationProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Authentication sequence name"}, "use-domain-find-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Attempt to use domain to determine authentication profile"}} # Authentication sequence name def name prop_get('@name') end # Attempt to use domain to determine authentication profile def use_domain_find_profile prop_get('use-domain-find-profile') end # Attempt to use domain to determine authentication profile def use_domain_find_profile=(val) prop_set('use-domain-find-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationSequence def authentication_sequence if @create_children @subclasses['authentication-sequence'] ||= AuthenticationSequence.new(parent_instance: self, create_children: @create_children) else AuthenticationSequence.new(parent_instance: self) end end class CertificateProfile < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsernameField < XML::ConfigClass def has_multiple_values? true end def _section :'username-field' end @props={"subject"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject", "enum"=>[{"value"=>"common-name"}]}, "subject-alt"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject alternative name", "enum"=>[{"value"=>"email"}, {"value"=>"principal-name"}]}} # get user name from subject def subject prop_get('subject') end # get user name from subject def subject=(val) prop_set('subject', val) end # get user name from subject alternative name def subject_alt prop_get('subject-alt') end # get user name from subject alternative name def subject_alt=(val) prop_set('subject-alt', val) end end # class UsernameField def username_field if @create_children @subclasses['username-field'] ||= UsernameField.new(parent_instance: self, create_children: @create_children) else UsernameField.new(parent_instance: self) end end class CA < XML::ConfigClass def has_multiple_values? true end def _section :'CA' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"CA file for client certificate", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry[ca='yes']/@name"]}, "default-ocsp-url"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"default URL for ocsp verification"}, "ocsp-verify-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "help-string"=>"Certificate to verify signature in OCSP response", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry/@name"]}, "template-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"Certificate Template Name / OID for the certificate"}} # CA file for client certificate def name prop_get('@name') end # default URL for ocsp verification def default_ocsp_url prop_get('default-ocsp-url') end # default URL for ocsp verification def default_ocsp_url=(val) prop_set('default-ocsp-url', val) end # Certificate to verify signature in OCSP response def ocsp_verify_cert prop_get('ocsp-verify-cert') end # Certificate to verify signature in OCSP response def ocsp_verify_cert=(val) prop_set('ocsp-verify-cert', val) end # Certificate Template Name / OID for the certificate def template_name prop_get('template-name') end # Certificate Template Name / OID for the certificate def template_name=(val) prop_set('template-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CA def CA if @create_children @subclasses['CA'] ||= CA.new(parent_instance: self, create_children: @create_children) else CA.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Profile name"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "uiHint-fieldLabel"=>"User Domain"}, "use-crl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ocsp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "ocsp-exclude-nonce"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to exclude nonce extension for OCSP requests"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "block-unauthenticated-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block session if the certificate was not issued to the authenticating device"}, "block-expired-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is expired"}} # Profile name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def domain prop_get('domain') end # alphanumeric string [ 0-9a-zA-Z._-] def domain=(val) prop_set('domain', val) end def use_crl prop_get('use-crl') end def use_crl=(val) prop_set('use-crl', val) end def use_ocsp prop_get('use-ocsp') end def use_ocsp=(val) prop_set('use-ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce prop_get('ocsp-exclude-nonce') end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce=(val) prop_set('ocsp-exclude-nonce', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert prop_get('block-unauthenticated-cert') end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert=(val) prop_set('block-unauthenticated-cert', val) end # whether to block a session if cert. status is expired def block_expired_cert prop_get('block-expired-cert') end # whether to block a session if cert. status is expired def block_expired_cert=(val) prop_set('block-expired-cert', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateProfile def certificate_profile if @create_children @subclasses['certificate-profile'] ||= CertificateProfile.new(parent_instance: self, create_children: @create_children) else CertificateProfile.new(parent_instance: self) end end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end class Ldap < XML::ConfigClass def has_multiple_values? true end def _section :'ldap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"ldap server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"389", "help-string"=>"default 389 for LDAP, 636 for LDAPS"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap server ip or host name. def address prop_get('address') end # ldap server ip or host name. def address=(val) prop_set('address', val) end # default 389 for LDAP, 636 for LDAPS def port prop_get('port') end # default 389 for LDAP, 636 for LDAPS def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "ldap-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"other", "enum"=> [{"value"=>"active-directory"}, {"value"=>"e-directory"}, {"value"=>"sun"}, {"value"=>"other"}]}, "ssl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "verify-server-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify server certificate for SSL sessions"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "base"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"Default base distinguished name (DN) to use for searches"}, "bind-dn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"bind distinguished name"}, "bind-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"121", "encrypt"=>"yes", "help-string"=>"bind password"}, "timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"30", "help-string"=>"number of seconds to wait for performing searches"}, "bind-timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"30", "help-string"=>"number of seconds to use for connecting to servers"}, "retry-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"3600", "help-string"=>"Interval (seconds) for reconnecting LDAP server", "default"=>"60"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end def ldap_type prop_get('ldap-type') end def ldap_type=(val) prop_set('ldap-type', val) end def ssl prop_get('ssl') end def ssl=(val) prop_set('ssl', val) end # Verify server certificate for SSL sessions def verify_server_certificate prop_get('verify-server-certificate') end # Verify server certificate for SSL sessions def verify_server_certificate=(val) prop_set('verify-server-certificate', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Default base distinguished name (DN) to use for searches def base prop_get('base') end # Default base distinguished name (DN) to use for searches def base=(val) prop_set('base', val) end # bind distinguished name def bind_dn prop_get('bind-dn') end # bind distinguished name def bind_dn=(val) prop_set('bind-dn', val) end # bind password def bind_password prop_get('bind-password') end # bind password def bind_password=(val) prop_set('bind-password', val) end # number of seconds to wait for performing searches def timelimit prop_get('timelimit') end # number of seconds to wait for performing searches def timelimit=(val) prop_set('timelimit', val) end # number of seconds to use for connecting to servers def bind_timelimit prop_get('bind-timelimit') end # number of seconds to use for connecting to servers def bind_timelimit=(val) prop_set('bind-timelimit', val) end # Interval (seconds) for reconnecting LDAP server def retry_interval prop_get('retry-interval') end # Interval (seconds) for reconnecting LDAP server def retry_interval=(val) prop_set('retry-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ldap def ldap if @create_children @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) else Ldap.new(parent_instance: self) end end class Radius < XML::ConfigClass def has_multiple_values? true end def _section :'radius' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class CHAP < ConfigClass def has_multiple_values? false end def _section :'CHAP' end @props={} end # class CHAP def CHAP @subclasses['CHAP'] ||= CHAP.new(parent_instance: self, create_children: @create_children) end class PAP < ConfigClass def has_multiple_values? false end def _section :'PAP' end @props={} end # class PAP def PAP @subclasses['PAP'] ||= PAP.new(parent_instance: self, create_children: @create_children) end class PEAPMSCHAPv2 < ConfigClass def has_multiple_values? false end def _section :'PEAP-MSCHAPv2' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "allow-pwd-change"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Allow users to change passwords after expiry"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Allow users to change passwords after expiry def allow_pwd_change prop_get('allow-pwd-change') end # Allow users to change passwords after expiry def allow_pwd_change=(val) prop_set('allow-pwd-change', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPMSCHAPv2 def PEAP_MSCHAPv2 @subclasses['PEAP-MSCHAPv2'] ||= PEAPMSCHAPv2.new(parent_instance: self, create_children: @create_children) end class PEAPWithGTC < ConfigClass def has_multiple_values? false end def _section :'PEAP-with-GTC' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPWithGTC def PEAP_with_GTC @subclasses['PEAP-with-GTC'] ||= PEAPWithGTC.new(parent_instance: self, create_children: @create_children) end class EAPTTLSWithPAP < ConfigClass def has_multiple_values? false end def _section :'EAP-TTLS-with-PAP' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class EAPTTLSWithPAP def EAP_TTLS_with_PAP @subclasses['EAP-TTLS-with-PAP'] ||= EAPTTLSWithPAP.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"RADIUS server IP or host name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for RADIUS communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1812", "help-string"=>"RADIUS server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # RADIUS server IP or host name def ip_address prop_get('ip-address') end # RADIUS server IP or host name def ip_address=(val) prop_set('ip-address', val) end # Shared secret for RADIUS communication def secret prop_get('secret') end # Shared secret for RADIUS communication def secret=(val) prop_set('secret', val) end # RADIUS server port def port prop_get('port') end # RADIUS server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"120", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"3", "help-string"=>"number of attempts before giving up authentication"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # number of attempts before giving up authentication def retries prop_get('retries') end # number of attempts before giving up authentication def retries=(val) prop_set('retries', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Radius def radius if @create_children @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) else Radius.new(parent_instance: self) end end class Scp < XML::ConfigClass def has_multiple_values? true end def _section :'scp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"SCP hostname"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"22", "help-string"=>"SCP port"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"128", "regex"=>"[^']*", "help-string"=>"SCP username"}, "password"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "regex"=>"[^']*", "help-string"=>"SCP Password", "encrypt"=>"yes"}} # alphanumeric string def name prop_get('@name') end # SCP hostname def server prop_get('server') end # SCP hostname def server=(val) prop_set('server', val) end # SCP port def port prop_get('port') end # SCP port def port=(val) prop_set('port', val) end # SCP username def username prop_get('username') end # SCP username def username=(val) prop_set('username', val) end # SCP Password def password prop_get('password') end # SCP Password def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scp def scp if @create_children @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) else Scp.new(parent_instance: self) end end class Kerberos < XML::ConfigClass def has_multiple_values? true end def _section :'kerberos' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Kerberos server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"88", "help-string"=>"Kerberos Domain Controller "}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Kerberos server ip or host name. def host prop_get('host') end # Kerberos server ip or host name. def host=(val) prop_set('host', val) end # Kerberos Domain Controller def port prop_get('port') end # Kerberos Domain Controller def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Kerberos def kerberos if @create_children @subclasses['kerberos'] ||= Kerberos.new(parent_instance: self, create_children: @create_children) else Kerberos.new(parent_instance: self) end end class Tacplus < XML::ConfigClass def has_multiple_values? true end def _section :'tacplus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"TACACS+ server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for TACACS+ communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"49", "help-string"=>"TACACS+ server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # TACACS+ server ip or host name. def address prop_get('address') end # TACACS+ server ip or host name. def address=(val) prop_set('address', val) end # Shared secret for TACACS+ communication def secret prop_get('secret') end # Shared secret for TACACS+ communication def secret=(val) prop_set('secret', val) end # TACACS+ server port def port prop_get('port') end # TACACS+ server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "use-single-connection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use single connection for all authentication"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"CHAP", "help-string"=>"Select authentication protocol", "enum"=>[{"value"=>"CHAP"}, {"value"=>"PAP"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end # Use single connection for all authentication def use_single_connection prop_get('use-single-connection') end # Use single connection for all authentication def use_single_connection=(val) prop_set('use-single-connection', val) end # Select authentication protocol def protocol prop_get('protocol') end # Select authentication protocol def protocol=(val) prop_set('protocol', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tacplus def tacplus if @create_children @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) else Tacplus.new(parent_instance: self) end end class SamlIdp < XML::ConfigClass def has_multiple_values? true end def _section :'saml-idp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "entity-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Unique identifier for SAML IdP"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "complete-handler"=>"check-idp-cert-fields-completer", "help-string"=>"Object name of IdP signing certificate", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry/@name"]}, "sso-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Sign On Service URL for the IdP server"}, "sso-bindings"=> {"node-type"=>"element", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "slo-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Logout Service URL for the IdP server"}, "slo-bindings"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "validate-idp-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Certificate revocation check for IdP certificate when checking assertion signature"}, "want-auth-requests-signed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Client auth request signed by cert"}, "max-clock-skew"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"900", "default"=>"60", "help-string"=> "maximum allowed clock skew in second between SAML entities' system time"}, "attribute-name-username-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response"}, "attribute-name-usergroup-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup"}, "attribute-name-admin-role-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role"}, "attribute-name-access-domain-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end # Unique identifier for SAML IdP def entity_id prop_get('entity-id') end # Unique identifier for SAML IdP def entity_id=(val) prop_set('entity-id', val) end # Object name of IdP signing certificate def certificate prop_get('certificate') end # Object name of IdP signing certificate def certificate=(val) prop_set('certificate', val) end # The Single Sign On Service URL for the IdP server def sso_url prop_get('sso-url') end # The Single Sign On Service URL for the IdP server def sso_url=(val) prop_set('sso-url', val) end def sso_bindings prop_get('sso-bindings') end def sso_bindings=(val) prop_set('sso-bindings', val) end # The Single Logout Service URL for the IdP server def slo_url prop_get('slo-url') end # The Single Logout Service URL for the IdP server def slo_url=(val) prop_set('slo-url', val) end def slo_bindings prop_get('slo-bindings') end def slo_bindings=(val) prop_set('slo-bindings', val) end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate prop_get('validate-idp-certificate') end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate=(val) prop_set('validate-idp-certificate', val) end # Client auth request signed by cert def want_auth_requests_signed prop_get('want-auth-requests-signed') end # Client auth request signed by cert def want_auth_requests_signed=(val) prop_set('want-auth-requests-signed', val) end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew prop_get('max-clock-skew') end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew=(val) prop_set('max-clock-skew', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username_import prop_get('attribute-name-username-import') end # Attribute name for username to be extracted from SAML response def attribute_name_username_import=(val) prop_set('attribute-name-username-import', val) end # usergroup def attribute_name_usergroup_import prop_get('attribute-name-usergroup-import') end # usergroup def attribute_name_usergroup_import=(val) prop_set('attribute-name-usergroup-import', val) end # admin-role def attribute_name_admin_role_import prop_get('attribute-name-admin-role-import') end # admin-role def attribute_name_admin_role_import=(val) prop_set('attribute-name-admin-role-import', val) end # access-domain def attribute_name_access_domain_import prop_get('attribute-name-access-domain-import') end # access-domain def attribute_name_access_domain_import=(val) prop_set('attribute-name-access-domain-import', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SamlIdp def saml_idp if @create_children @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) else SamlIdp.new(parent_instance: self) end end class Netflow < XML::ConfigClass def has_multiple_values? true end def _section :'netflow' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TemplateRefreshRate < ConfigClass def has_multiple_values? false end def _section :'template-refresh-rate' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30"}, "packets"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"20"}} def minutes prop_get('minutes') end def minutes=(val) prop_set('minutes', val) end def packets prop_get('packets') end def packets=(val) prop_set('packets', val) end end # class TemplateRefreshRate def template_refresh_rate @subclasses['template-refresh-rate'] ||= TemplateRefreshRate.new(parent_instance: self, create_children: @create_children) end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Netflow server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"loose-membership"=>"yes", "maxlen"=>"63"}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2055", "min"=>"1", "max"=>"65535", "help-string"=>"Netflow server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Netflow server ip or host name. def host prop_get('host') end # Netflow server ip or host name. def host=(val) prop_set('host', val) end # Netflow server port def port prop_get('port') end # Netflow server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "active-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Active timeout in minutes"}, "export-enterprise-fields"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Export PAN-OS Specific Field Types"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Active timeout in minutes def active_timeout prop_get('active-timeout') end # Active timeout in minutes def active_timeout=(val) prop_set('active-timeout', val) end # Export PAN-OS Specific Field Types def export_enterprise_fields prop_get('export-enterprise-fields') end # Export PAN-OS Specific Field Types def export_enterprise_fields=(val) prop_set('export-enterprise-fields', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Netflow def netflow if @create_children @subclasses['netflow'] ||= Netflow.new(parent_instance: self, create_children: @create_children) else Netflow.new(parent_instance: self) end end class Dns < XML::ConfigClass def has_multiple_values? true end def _section :'dns' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "#myentry(devices)/network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Dns def dns if @create_children @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) else Dns.new(parent_instance: self) end end class MfaServerProfile < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-server-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MfaConfig < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/auth/mfa/entry[@name='$vnd']/content/entry/@name"]}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaConfig def mfa_config if @create_children @subclasses['mfa-config'] ||= MfaConfig.new(parent_instance: self, create_children: @create_children) else MfaConfig.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"MFA Server Profile Name"}, "mfa-vendor-type"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=>["##/predefined/auth/mfa/entry/@name"]}, "mfa-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the MFA Vendor", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # MFA Server Profile Name def name prop_get('@name') end # Vendor and product type def mfa_vendor_type prop_get('mfa-vendor-type') end # Vendor and product type def mfa_vendor_type=(val) prop_set('mfa-vendor-type', val) end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile prop_get('mfa-cert-profile') end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile=(val) prop_set('mfa-cert-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaServerProfile def mfa_server_profile if @create_children @subclasses['mfa-server-profile'] ||= MfaServerProfile.new(parent_instance: self, create_children: @create_children) else MfaServerProfile.new(parent_instance: self) end end @props={} end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/system/match-list/entry/filter", "##/shared/log-settings/system/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/config/match-list/entry/filter", "##/shared/log-settings/config/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/userid/match-list/entry/filter", "##/shared/log-settings/userid/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/iptag/match-list/entry/filter", "##/shared/log-settings/iptag/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/globalprotect/match-list/entry/filter", "##/shared/log-settings/globalprotect/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class Hipmatch__6 < ConfigClass def has_multiple_values? false end def _section :'hipmatch__6' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/hipmatch/match-list/entry/filter", "##/shared/log-settings/hipmatch/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Hipmatch__6 def hipmatch__6 @subclasses['hipmatch__6'] ||= Hipmatch__6.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SMTP gateway to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$|^\\$([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SYSLOG server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ContentPreview < ConfigClass def has_multiple_values? false end def _section :'content-preview' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Default < XML::ConfigClass def has_multiple_values? true end def _section :'default' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic)"}} # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member prop_get('member') end # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member=(val) prop_set('member', val) end end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class IdentByIcmpType < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmpType def ident_by_icmp_type @subclasses['ident-by-icmp-type'] ||= IdentByIcmpType.new(parent_instance: self, create_children: @create_children) end class IdentByIcmp6Type < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp6-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmp6Type def ident_by_icmp6_type @subclasses['ident-by-icmp6-type'] ||= IdentByIcmp6Type.new(parent_instance: self, create_children: @create_children) end @props={"ident-by-ip-protocol"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def ident_by_ip_protocol prop_get('ident-by-ip-protocol') end def ident_by_ip_protocol=(val) prop_set('ident-by-ip-protocol', val) end end # class Default def default if @create_children @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) else Default.new(parent_instance: self) end end class UseApplications < XML::ConfigClass def has_multiple_values? true end def _section :'use-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UseApplications def use_applications if @create_children @subclasses['use-applications'] ||= UseApplications.new(parent_instance: self, create_children: @create_children) else UseApplications.new(parent_instance: self) end end class ImplicitUseApplications < XML::ConfigClass def has_multiple_values? true end def _section :'implicit-use-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ImplicitUseApplications def implicit_use_applications if @create_children @subclasses['implicit-use-applications'] ||= ImplicitUseApplications.new(parent_instance: self, create_children: @create_children) else ImplicitUseApplications.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "category"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}, "subcategory"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry[@name='$category']/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry[@name='$category']/subcategory/entry/@name"]}, "technology"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "udp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-half-closed-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout for half-close session in seconds"}, "tcp-time-wait-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "help-string"=>"timeout for session in time_wait state in seconds"}, "risk"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}, "evasive-behavior"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "consume-big-bandwidth"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "used-by-malware"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "able-to-transfer-file"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "has-known-vulnerability"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-other-application"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-applications"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "pervasive-use"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "file-type-ident"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "virus-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "data-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "no-appid-caching"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "alg-disable-capability"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "parent-app"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name|#config/predefined/application-container/entry/@name"]}, "cachable"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "can-disable"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "preview"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "is-saas"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def subcategory prop_get('subcategory') end def subcategory=(val) prop_set('subcategory', val) end def technology prop_get('technology') end def technology=(val) prop_set('technology', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # timeout in seconds def timeout prop_get('timeout') end # timeout in seconds def timeout=(val) prop_set('timeout', val) end # timeout in seconds def tcp_timeout prop_get('tcp-timeout') end # timeout in seconds def tcp_timeout=(val) prop_set('tcp-timeout', val) end # timeout in seconds def udp_timeout prop_get('udp-timeout') end # timeout in seconds def udp_timeout=(val) prop_set('udp-timeout', val) end # timeout for half-close session in seconds def tcp_half_closed_timeout prop_get('tcp-half-closed-timeout') end # timeout for half-close session in seconds def tcp_half_closed_timeout=(val) prop_set('tcp-half-closed-timeout', val) end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout prop_get('tcp-time-wait-timeout') end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout=(val) prop_set('tcp-time-wait-timeout', val) end def risk prop_get('risk') end def risk=(val) prop_set('risk', val) end def evasive_behavior prop_get('evasive-behavior') end def evasive_behavior=(val) prop_set('evasive-behavior', val) end def consume_big_bandwidth prop_get('consume-big-bandwidth') end def consume_big_bandwidth=(val) prop_set('consume-big-bandwidth', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def able_to_transfer_file prop_get('able-to-transfer-file') end def able_to_transfer_file=(val) prop_set('able-to-transfer-file', val) end def has_known_vulnerability prop_get('has-known-vulnerability') end def has_known_vulnerability=(val) prop_set('has-known-vulnerability', val) end def tunnel_other_application prop_get('tunnel-other-application') end def tunnel_other_application=(val) prop_set('tunnel-other-application', val) end def tunnel_applications prop_get('tunnel-applications') end def tunnel_applications=(val) prop_set('tunnel-applications', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive_use prop_get('pervasive-use') end def pervasive_use=(val) prop_set('pervasive-use', val) end def file_type_ident prop_get('file-type-ident') end def file_type_ident=(val) prop_set('file-type-ident', val) end def virus_ident prop_get('virus-ident') end def virus_ident=(val) prop_set('virus-ident', val) end def data_ident prop_get('data-ident') end def data_ident=(val) prop_set('data-ident', val) end def no_appid_caching prop_get('no-appid-caching') end def no_appid_caching=(val) prop_set('no-appid-caching', val) end def alg_disable_capability prop_get('alg-disable-capability') end def alg_disable_capability=(val) prop_set('alg-disable-capability', val) end def parent_app prop_get('parent-app') end def parent_app=(val) prop_set('parent-app', val) end def cachable prop_get('cachable') end def cachable=(val) prop_set('cachable', val) end def can_disable prop_get('can-disable') end def can_disable=(val) prop_set('can-disable', val) end def preview prop_get('preview') end def preview=(val) prop_set('preview', val) end def is_saas prop_get('is-saas') end def is_saas=(val) prop_set('is-saas', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ApplicationType < XML::ConfigClass def has_multiple_values? true end def _section :'application-type' end class Category < ConfigClass def has_multiple_values? false end def _section :'category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "@id"=>{"node-type"=>"attr-req", "type"=>"rangedint", "max"=>"128"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('@id') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Category def category @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) end class Technology < ConfigClass def has_multiple_values? false end def _section :'technology' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "@id"=>{"node-type"=>"attr-req", "type"=>"rangedint", "max"=>"128"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('@id') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Technology def technology @subclasses['technology'] ||= Technology.new(parent_instance: self, create_children: @create_children) end @props={} end # class ApplicationType def application_type if @create_children @subclasses['application-type'] ||= ApplicationType.new(parent_instance: self, create_children: @create_children) else ApplicationType.new(parent_instance: self) end end @props={} end # class ContentPreview def content_preview @subclasses['content-preview'] ||= ContentPreview.new(parent_instance: self, create_children: @create_children) end class Certificate < XML::ConfigClass def has_multiple_values? true end def _section :'certificate' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "common-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "algorithm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "ca"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes"}, "not-valid-after"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "not-valid-before"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "expiry-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}, "subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "subject-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "issuer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "issuer-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "public-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"16384"}, "private-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"16384", "encrypt"=>"yes", "double-encrypt"=>"yes"}, "private-key-on-hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "status"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"valid", "enum"=>[{"value"=>"valid"}, {"value"=>"revoked"}]}, "revoke-date-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def common_name prop_get('common-name') end def common_name=(val) prop_set('common-name', val) end def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end def ca prop_get('ca') end def ca=(val) prop_set('ca', val) end def not_valid_after prop_get('not-valid-after') end def not_valid_after=(val) prop_set('not-valid-after', val) end def not_valid_before prop_get('not-valid-before') end def not_valid_before=(val) prop_set('not-valid-before', val) end def expiry_epoch prop_get('expiry-epoch') end def expiry_epoch=(val) prop_set('expiry-epoch', val) end def subject prop_get('subject') end def subject=(val) prop_set('subject', val) end def subject_hash prop_get('subject-hash') end def subject_hash=(val) prop_set('subject-hash', val) end def issuer prop_get('issuer') end def issuer=(val) prop_set('issuer', val) end def issuer_hash prop_get('issuer-hash') end def issuer_hash=(val) prop_set('issuer-hash', val) end def public_key prop_get('public-key') end def public_key=(val) prop_set('public-key', val) end def private_key prop_get('private-key') end def private_key=(val) prop_set('private-key', val) end def private_key_on_hsm prop_get('private-key-on-hsm') end def private_key_on_hsm=(val) prop_set('private-key-on-hsm', val) end def status prop_get('status') end def status=(val) prop_set('status', val) end def revoke_date_epoch prop_get('revoke-date-epoch') end def revoke_date_epoch=(val) prop_set('revoke-date-epoch', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Certificate def certificate if @create_children @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) else Certificate.new(parent_instance: self) end end class SslTlsServiceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-tls-service-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class ProtocolSettings def protocol_settings @subclasses['protocol-settings'] ||= ProtocolSettings.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"127", "regex"=>".*", "help-string"=>"Profile name"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"SSL certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name"]}} # Profile name def name prop_get('@name') end # SSL certificate file name def certificate prop_get('certificate') end # SSL certificate file name def certificate=(val) prop_set('certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslTlsServiceProfile def ssl_tls_service_profile if @create_children @subclasses['ssl-tls-service-profile'] ||= SslTlsServiceProfile.new(parent_instance: self, create_children: @create_children) else SslTlsServiceProfile.new(parent_instance: self) end end class ResponsePage < ConfigClass def has_multiple_values? false end def _section :'response-page' end class GlobalProtectPortalCustomLoginPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-login-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomLoginPage def global_protect_portal_custom_login_page if @create_children @subclasses['global-protect-portal-custom-login-page'] ||= GlobalProtectPortalCustomLoginPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomLoginPage.new(parent_instance: self) end end class GlobalProtectPortalCustomHomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-home-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHomePage def global_protect_portal_custom_home_page if @create_children @subclasses['global-protect-portal-custom-home-page'] ||= GlobalProtectPortalCustomHomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHomePage.new(parent_instance: self) end end class GlobalProtectPortalCustomHelpPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-help-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHelpPage def global_protect_portal_custom_help_page if @create_children @subclasses['global-protect-portal-custom-help-page'] ||= GlobalProtectPortalCustomHelpPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHelpPage.new(parent_instance: self) end end class GlobalProtectPortalCustomWelcomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-welcome-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomWelcomePage def global_protect_portal_custom_welcome_page if @create_children @subclasses['global-protect-portal-custom-welcome-page'] ||= GlobalProtectPortalCustomWelcomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomWelcomePage.new(parent_instance: self) end end @props={"application-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "captive-portal-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "file-block-continue-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "file-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "ssl-cert-status-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "ssl-optout-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "url-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "url-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "credential-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "credential-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "virus-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "data-filter-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "safe-search-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "saml-auth-internal-error-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}, "mfa-login-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes"}} def application_block_page prop_get('application-block-page') end def application_block_page=(val) prop_set('application-block-page', val) end def captive_portal_text prop_get('captive-portal-text') end def captive_portal_text=(val) prop_set('captive-portal-text', val) end def file_block_continue_page prop_get('file-block-continue-page') end def file_block_continue_page=(val) prop_set('file-block-continue-page', val) end def file_block_page prop_get('file-block-page') end def file_block_page=(val) prop_set('file-block-page', val) end def ssl_cert_status_page prop_get('ssl-cert-status-page') end def ssl_cert_status_page=(val) prop_set('ssl-cert-status-page', val) end def ssl_optout_text prop_get('ssl-optout-text') end def ssl_optout_text=(val) prop_set('ssl-optout-text', val) end def url_block_page prop_get('url-block-page') end def url_block_page=(val) prop_set('url-block-page', val) end def url_coach_text prop_get('url-coach-text') end def url_coach_text=(val) prop_set('url-coach-text', val) end def credential_block_page prop_get('credential-block-page') end def credential_block_page=(val) prop_set('credential-block-page', val) end def credential_coach_text prop_get('credential-coach-text') end def credential_coach_text=(val) prop_set('credential-coach-text', val) end def virus_block_page prop_get('virus-block-page') end def virus_block_page=(val) prop_set('virus-block-page', val) end def data_filter_block_page prop_get('data-filter-block-page') end def data_filter_block_page=(val) prop_set('data-filter-block-page', val) end def safe_search_block_page prop_get('safe-search-block-page') end def safe_search_block_page=(val) prop_set('safe-search-block-page', val) end def saml_auth_internal_error_page prop_get('saml-auth-internal-error-page') end def saml_auth_internal_error_page=(val) prop_set('saml-auth-internal-error-page', val) end def mfa_login_page prop_get('mfa-login-page') end def mfa_login_page=(val) prop_set('mfa-login-page', val) end end # class ResponsePage def response_page @subclasses['response-page'] ||= ResponsePage.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"User name"}, "phash"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # User name def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end class UserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'user-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"User name", "autocomplete"=>"yes", "memberof"=>["#local-user-database/user/entry/@name"]}} # User name def member prop_get('member') end # User name def member=(val) prop_set('member', val) end end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Group name"}} # Group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UserGroup def user_group if @create_children @subclasses['user-group'] ||= UserGroup.new(parent_instance: self, create_children: @create_children) else UserGroup.new(parent_instance: self) end end @props={} end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end class OcspResponder < XML::ConfigClass def has_multiple_values? true end def _section :'ocsp-responder' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [:0-9a-zA-Z._-]"}, "host-name"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^([$:a-zA-Z0-9._-])+$", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # alphanumeric string [:0-9a-zA-Z._-] def name prop_get('@name') end def host_name prop_get('host-name') end def host_name=(val) prop_set('host-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OcspResponder def ocsp_responder if @create_children @subclasses['ocsp-responder'] ||= OcspResponder.new(parent_instance: self, create_children: @create_children) else OcspResponder.new(parent_instance: self) end end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end class ForwardTrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-trust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardTrustCertificate def forward_trust_certificate @subclasses['forward-trust-certificate'] ||= ForwardTrustCertificate.new(parent_instance: self, create_children: @create_children) end class ForwardUntrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-untrust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardUntrustCertificate def forward_untrust_certificate @subclasses['forward-untrust-certificate'] ||= ForwardUntrustCertificate.new(parent_instance: self, create_children: @create_children) end class SslExcludeCert < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-exclude-cert' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"SSL Decryption Exclusion entry name"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"512"}, "exclude"=>{"node-type"=>"element", "type"=>"bool"}} # SSL Decryption Exclusion entry name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def exclude prop_get('exclude') end def exclude=(val) prop_set('exclude', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslExcludeCert def ssl_exclude_cert if @create_children @subclasses['ssl-exclude-cert'] ||= SslExcludeCert.new(parent_instance: self, create_children: @create_children) else SslExcludeCert.new(parent_instance: self) end end class RootCaExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca-exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=>["##/predefined/trusted-root-ca/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCaExcludeList def root_ca_exclude_list if @create_children @subclasses['root-ca-exclude-list'] ||= RootCaExcludeList.new(parent_instance: self, create_children: @create_children) else RootCaExcludeList.new(parent_instance: self) end end class TrustedRootCA < XML::ConfigClass def has_multiple_values? true end def _section :'trusted-root-CA' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Trusted Root CA", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry[not(csr)]/@name"]}} # Trusted Root CA def member prop_get('member') end # Trusted Root CA def member=(val) prop_set('member', val) end end # class TrustedRootCA def trusted_root_CA if @create_children @subclasses['trusted-root-CA'] ||= TrustedRootCA.new(parent_instance: self, create_children: @create_children) else TrustedRootCA.new(parent_instance: self) end end class DisabledSslExcludeCertFromPredefined < XML::ConfigClass def has_multiple_values? true end def _section :'disabled-ssl-exclude-cert-from-predefined' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "loose-membership"=>"yes", "max-count"=>"512", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DisabledSslExcludeCertFromPredefined def disabled_ssl_exclude_cert_from_predefined if @create_children @subclasses['disabled-ssl-exclude-cert-from-predefined'] ||= DisabledSslExcludeCertFromPredefined.new(parent_instance: self, create_children: @create_children) else DisabledSslExcludeCertFromPredefined.new(parent_instance: self) end end @props={} end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end class UrlContentTypes < XML::ConfigClass def has_multiple_values? true end def _section :'url-content-types' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "loose-membership"=>"yes", "help-string"=>"content type string", "autocomplete"=>"yes", "memberof"=>[]}} # content type string def member prop_get('member') end # content type string def member=(val) prop_set('member', val) end end # class UrlContentTypes def url_content_types if @create_children @subclasses['url-content-types'] ||= UrlContentTypes.new(parent_instance: self, create_children: @create_children) else UrlContentTypes.new(parent_instance: self) end end class AdminRole < XML::ConfigClass def has_multiple_values? true end def _section :'admin-role' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Role < XML::ConfigClass def has_multiple_values? true end def _section :'role' end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Webui < ConfigClass def has_multiple_values? false end def _section :'webui' end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end class Logs < ConfigClass def has_multiple_values? false end def _section :'logs' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"traffic_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"threat_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"URL Filtering", "help-topic"=>"url_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"WildFire Submissions", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filter_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_match_log", "menu-tree-path"=>"HIP Match", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ip_tag", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"userid_log", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_log", "menu-tree-path"=>"GTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_log", "menu-tree-path"=>"Tunnel Inspection", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_log", "menu-tree-path"=>"SCTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "configuration"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def hipmatch__6 prop_get('hipmatch__6') end def hipmatch__6=(val) prop_set('hipmatch__6', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def configuration prop_get('configuration') end def configuration=(val) prop_set('configuration', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def alarm prop_get('alarm') end def alarm=(val) prop_set('alarm', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end end # class Logs def logs @subclasses['logs'] ||= Logs.new(parent_instance: self, create_children: @create_children) end class AutomatedCorrelationEngine < ConfigClass def has_multiple_values? false end def _section :'automated-correlation-engine' end @props={"correlation-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "correlated-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def correlation_objects prop_get('correlation-objects') end def correlation_objects=(val) prop_set('correlation-objects', val) end def correlated_events prop_get('correlated-events') end def correlated_events=(val) prop_set('correlated-events', val) end end # class AutomatedCorrelationEngine def automated_correlation_engine @subclasses['automated-correlation-engine'] ||= AutomatedCorrelationEngine.new(parent_instance: self, create_children: @create_children) end class PdfReports < ConfigClass def has_multiple_values? false end def _section :'pdf-reports' end @props={"manage-pdf-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage PDF Summary", "help-topic"=>"manage_pdf_summary_report", "node-config-ids"=>"ManagePdfSummary", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pdf-summary-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"PDF Summary Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-activity-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"UserActivityReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saas-application-usage-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Application Usage", "node-config-ids"=>"SaasAppUsageReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "report-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ReportGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email-scheduler"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"report_email", "node-config-ids"=>"EmailScheduler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def manage_pdf_summary prop_get('manage-pdf-summary') end def manage_pdf_summary=(val) prop_set('manage-pdf-summary', val) end def pdf_summary_reports prop_get('pdf-summary-reports') end def pdf_summary_reports=(val) prop_set('pdf-summary-reports', val) end def user_activity_report prop_get('user-activity-report') end def user_activity_report=(val) prop_set('user-activity-report', val) end def saas_application_usage_report prop_get('saas-application-usage-report') end def saas_application_usage_report=(val) prop_set('saas-application-usage-report', val) end def report_groups prop_get('report-groups') end def report_groups=(val) prop_set('report-groups', val) end def email_scheduler prop_get('email-scheduler') end def email_scheduler=(val) prop_set('email-scheduler', val) end end # class PdfReports def pdf_reports @subclasses['pdf-reports'] ||= PdfReports.new(parent_instance: self, create_children: @create_children) end class CustomReports < ConfigClass def has_multiple_values? false end def _section :'custom-reports' end @props={"application-statistics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "prune-on"=>"vpn-disable-mode", "menu-tree-path"=>"HIP Match", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"WildFire Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"Authentication", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def application_statistics prop_get('application-statistics') end def application_statistics=(val) prop_set('application-statistics', val) end def data_filtering_log prop_get('data-filtering-log') end def data_filtering_log=(val) prop_set('data-filtering-log', val) end def threat_log prop_get('threat-log') end def threat_log=(val) prop_set('threat-log', val) end def threat_summary prop_get('threat-summary') end def threat_summary=(val) prop_set('threat-summary', val) end def traffic_log prop_get('traffic-log') end def traffic_log=(val) prop_set('traffic-log', val) end def traffic_summary prop_get('traffic-summary') end def traffic_summary=(val) prop_set('traffic-summary', val) end def url_log prop_get('url-log') end def url_log=(val) prop_set('url-log', val) end def url_summary prop_get('url-summary') end def url_summary=(val) prop_set('url-summary', val) end def hipmatch__9 prop_get('hipmatch__9') end def hipmatch__9=(val) prop_set('hipmatch__9', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def wildfire_log prop_get('wildfire-log') end def wildfire_log=(val) prop_set('wildfire-log', val) end def gtp_log prop_get('gtp-log') end def gtp_log=(val) prop_set('gtp-log', val) end def gtp_summary prop_get('gtp-summary') end def gtp_summary=(val) prop_set('gtp-summary', val) end def tunnel_log prop_get('tunnel-log') end def tunnel_log=(val) prop_set('tunnel-log', val) end def tunnel_summary prop_get('tunnel-summary') end def tunnel_summary=(val) prop_set('tunnel-summary', val) end def sctp_log prop_get('sctp-log') end def sctp_log=(val) prop_set('sctp-log', val) end def sctp_summary prop_get('sctp-summary') end def sctp_summary=(val) prop_set('sctp-summary', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end end # class CustomReports def custom_reports @subclasses['custom-reports'] ||= CustomReports.new(parent_instance: self, create_children: @create_children) end @props={"external-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Logs", "help-topic"=>"external_logs", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "packet-capture"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "app-scope"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "session-browser"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-ip-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Block IP List", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "botnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"botnet_reports", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "view-custom-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Scheduled Custom Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "application-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Application Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Threat Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-filtering-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined URL Filtering Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Traffic Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined GTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined SCTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def external_logs prop_get('external-logs') end def external_logs=(val) prop_set('external-logs', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end def app_scope prop_get('app-scope') end def app_scope=(val) prop_set('app-scope', val) end def session_browser prop_get('session-browser') end def session_browser=(val) prop_set('session-browser', val) end def block_ip_list prop_get('block-ip-list') end def block_ip_list=(val) prop_set('block-ip-list', val) end def botnet prop_get('botnet') end def botnet=(val) prop_set('botnet', val) end def view_custom_reports prop_get('view-custom-reports') end def view_custom_reports=(val) prop_set('view-custom-reports', val) end def application_reports prop_get('application-reports') end def application_reports=(val) prop_set('application-reports', val) end def threat_reports prop_get('threat-reports') end def threat_reports=(val) prop_set('threat-reports', val) end def url_filtering_reports prop_get('url-filtering-reports') end def url_filtering_reports=(val) prop_set('url-filtering-reports', val) end def traffic_reports prop_get('traffic-reports') end def traffic_reports=(val) prop_set('traffic-reports', val) end def gtp_reports prop_get('gtp-reports') end def gtp_reports=(val) prop_set('gtp-reports', val) end def sctp_reports prop_get('sctp-reports') end def sctp_reports=(val) prop_set('sctp-reports', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Security", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "node-config-ids"=> "DeviceSecurityRules1,DeviceSecurityRules2,DeviceSecurityRules3,DeviceSecurityRules4,DeviceSecurityRules5,DeviceSecurityRules6", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.nat-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"NAT", "help-topic"=>"nat_rules", "node-config-ids"=>"DeviceNATRules1,DeviceNATRules2,DeviceNATRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceQOSRules1,DeviceQOSRules2,DeviceQOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pbf-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.pbf-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Policy Based Forwarding", "node-config-ids"=>"DevicePBFRules1,DevicePBFRules2,DevicePBFRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Decryption", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "node-config-ids"=> "DeviceDecryptionRules1,DeviceDecryptionRules2,DeviceDecryptionRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspect-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "node-config-ids"=> "DeviceTunnelInspectRules1,DeviceTunnelInspectRules2,DeviceTunnelInspectRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Application Override", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "node-config-ids"=> "DeviceAppOverrideRules1,DeviceAppOverrideRules2,DeviceAppOverrideRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "node-config-ids"=> "DeviceAuthenticationRules1,DeviceAuthenticationRules2,DeviceAuthenticationRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DoS Protection", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "node-config-ids"=>"DeviceDOSRules1,DeviceDOSRules2,DeviceDOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN", "help-topic"=>"sdwan_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceSDWANRules1,DeviceSDWANRules2,DeviceSDWANRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "rule-hit-count-reset"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Rule Hit Count Reset", "help-topic"=>"rule_hit_count_reset", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def security_rulebase prop_get('security-rulebase') end def security_rulebase=(val) prop_set('security-rulebase', val) end def nat_rulebase prop_get('nat-rulebase') end def nat_rulebase=(val) prop_set('nat-rulebase', val) end def qos_rulebase prop_get('qos-rulebase') end def qos_rulebase=(val) prop_set('qos-rulebase', val) end def pbf_rulebase prop_get('pbf-rulebase') end def pbf_rulebase=(val) prop_set('pbf-rulebase', val) end def ssl_decryption_rulebase prop_get('ssl-decryption-rulebase') end def ssl_decryption_rulebase=(val) prop_set('ssl-decryption-rulebase', val) end def tunnel_inspect_rulebase prop_get('tunnel-inspect-rulebase') end def tunnel_inspect_rulebase=(val) prop_set('tunnel-inspect-rulebase', val) end def application_override_rulebase prop_get('application-override-rulebase') end def application_override_rulebase=(val) prop_set('application-override-rulebase', val) end def authentication_rulebase prop_get('authentication-rulebase') end def authentication_rulebase=(val) prop_set('authentication-rulebase', val) end def dos_rulebase prop_get('dos-rulebase') end def dos_rulebase=(val) prop_set('dos-rulebase', val) end def sdwan_rulebase prop_get('sdwan-rulebase') end def sdwan_rulebase=(val) prop_set('sdwan-rulebase', val) end def rule_hit_count_reset prop_get('rule-hit-count-reset') end def rule_hit_count_reset=(val) prop_set('rule-hit-count-reset', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end class GlobalProtect__12 < ConfigClass def has_multiple_values? false end def _section :'global-protect__12' end @props={"hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"HIP Objects", "node-config-ids"=>"HIPObjects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"HIP Profiles", "node-config-ids"=>"HIPProfiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def hip_objects prop_get('hip-objects') end def hip_objects=(val) prop_set('hip-objects', val) end def hip_profiles prop_get('hip-profiles') end def hip_profiles=(val) prop_set('hip-profiles', val) end end # class GlobalProtect__12 def global_protect__12 @subclasses['global-protect__12'] ||= GlobalProtect__12.new(parent_instance: self, create_children: @create_children) end class CustomObjects < ConfigClass def has_multiple_values? false end def _section :'custom-objects' end @props={"data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DataPatterns", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "spyware"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "node-config-ids"=>"CustomSpyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "node-config-ids"=>"CustomVulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-category"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Category", "help-topic"=>"custom_url_categories", "node-config-ids"=>"CustomURLCategory", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def data_patterns prop_get('data-patterns') end def data_patterns=(val) prop_set('data-patterns', val) end def spyware prop_get('spyware') end def spyware=(val) prop_set('spyware', val) end def vulnerability prop_get('vulnerability') end def vulnerability=(val) prop_set('vulnerability', val) end def url_category prop_get('url-category') end def url_category=(val) prop_set('url-category', val) end end # class CustomObjects def custom_objects @subclasses['custom-objects'] ||= CustomObjects.new(parent_instance: self, create_children: @create_children) end class SecurityProfiles < ConfigClass def has_multiple_values? false end def _section :'security-profiles' end @props={"antivirus"=> {"node-type"=>"element", "menu-tree-path"=>"Antivirus", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiVirusProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware"=> {"node-type"=>"element", "menu-tree-path"=>"Anti-Spyware", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiSpywareProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"VulnerabilityProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "menu-tree-path"=>"URL Filtering", "skip-display"=>"shared-gateway", "node-config-ids"=>"URLFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"FileBlocking", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis"=> {"node-type"=>"element", "menu-tree-path"=>"WildFire Analysis", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"WildFireAnalysis", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"DataFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection", "node-config-ids"=>"DoSProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"Mobile Network Protection", "node-config-ids"=>"GTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection", "node-config-ids"=>"SCTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def antivirus prop_get('antivirus') end def antivirus=(val) prop_set('antivirus', val) end def anti_spyware prop_get('anti-spyware') end def anti_spyware=(val) prop_set('anti-spyware', val) end def vulnerability_protection prop_get('vulnerability-protection') end def vulnerability_protection=(val) prop_set('vulnerability-protection', val) end def url_filtering prop_get('url-filtering') end def url_filtering=(val) prop_set('url-filtering', val) end def file_blocking prop_get('file-blocking') end def file_blocking=(val) prop_set('file-blocking', val) end def wildfire_analysis prop_get('wildfire-analysis') end def wildfire_analysis=(val) prop_set('wildfire-analysis', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def dos_protection prop_get('dos-protection') end def dos_protection=(val) prop_set('dos-protection', val) end def gtp_protection prop_get('gtp-protection') end def gtp_protection=(val) prop_set('gtp-protection', val) end def sctp_protection prop_get('sctp-protection') end def sctp_protection=(val) prop_set('sctp-protection', val) end end # class SecurityProfiles def security_profiles @subclasses['security-profiles'] ||= SecurityProfiles.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end @props={"decryption-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "menu-tree-path"=>"Decryption Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profile"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "menu-tree-path"=>"Forwarding Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionForwardingProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def decryption_profile prop_get('decryption-profile') end def decryption_profile=(val) prop_set('decryption-profile', val) end def decryption_forwarding_profile prop_get('decryption-forwarding-profile') end def decryption_forwarding_profile=(val) prop_set('decryption-forwarding-profile', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end @props={"sdwan-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Path Quality Profile", "node-config-ids"=>"SDWANProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Quality Profile", "node-config-ids"=>"SDWANSaaSQualityProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-dist-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic Distribution Profile", "node-config-ids"=>"SDWANDistProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Error Correction Profile", "node-config-ids"=>"SDWANErrorCorrectionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def sdwan_profile prop_get('sdwan-profile') end def sdwan_profile=(val) prop_set('sdwan-profile', val) end def sdwan_saas_quality_profile prop_get('sdwan-saas-quality-profile') end def sdwan_saas_quality_profile=(val) prop_set('sdwan-saas-quality-profile', val) end def sdwan_dist_profile prop_get('sdwan-dist-profile') end def sdwan_dist_profile=(val) prop_set('sdwan-dist-profile', val) end def sdwan_error_correction_profile prop_get('sdwan-error-correction-profile') end def sdwan_error_correction_profile=(val) prop_set('sdwan-error-correction-profile', val) end end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Address", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AddressGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Region", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUserGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Application", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationFilter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Service", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ServiceGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Tag", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-block-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Dynamic Lists", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "node-config-ids"=>"DynamicBlockList", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"SecurityProfileGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "node-config-ids"=>"LogForwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "node-config-ids"=>"AuthenticationObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Schedule", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def dynamic_block_lists prop_get('dynamic-block-lists') end def dynamic_block_lists=(val) prop_set('dynamic-block-lists', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding prop_get('log-forwarding') end def log_forwarding=(val) prop_set('log-forwarding', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Routing < ConfigClass def has_multiple_values? false end def _section :'routing' end class RoutingProfiles < ConfigClass def has_multiple_values? false end def _section :'routing-profiles' end @props={"bgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"routing_profiles_bgp", "menu-tree-path"=>"BGP", "node-config-ids"=>"RoutingProfilesBGP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def bgp prop_get('bgp') end def bgp=(val) prop_set('bgp', val) end end # class RoutingProfiles def routing_profiles @subclasses['routing-profiles'] ||= RoutingProfiles.new(parent_instance: self, create_children: @create_children) end @props={"logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"logical_routers", "node-config-ids"=>"LogicalRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end end # class Routing def routing @subclasses['routing'] ||= Routing.new(parent_instance: self, create_children: @create_children) end class GlobalProtect__11 < ConfigClass def has_multiple_values? false end def _section :'global-protect__11' end @props={"portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"portals_globalprotect", "node-config-ids"=>"GlobalProtectPortal", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gateways_globalprotect", "node-config-ids"=>"GlobalProtectGatewayVSYS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mdm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"MDM", "help-topic"=>"mdm_globalprotect", "node-config-ids"=>"GlobalProtectMDM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_apps", "node-config-ids"=>"GlobalProtectClientlessApp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_app_groups", "node-config-ids"=>"GlobalProtectClientlessAppGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def portals prop_get('portals') end def portals=(val) prop_set('portals', val) end def gateways prop_get('gateways') end def gateways=(val) prop_set('gateways', val) end def mdm prop_get('mdm') end def mdm=(val) prop_set('mdm', val) end def clientless_apps prop_get('clientless-apps') end def clientless_apps=(val) prop_set('clientless-apps', val) end def clientless_app_groups prop_get('clientless-app-groups') end def clientless_app_groups=(val) prop_set('clientless-app-groups', val) end end # class GlobalProtect__11 def global_protect__11 @subclasses['global-protect__11'] ||= GlobalProtect__11.new(parent_instance: self, create_children: @create_children) end class NetworkProfiles < ConfigClass def has_multiple_values? false end def _section :'network-profiles' end @props={"gp-app-ipsec-crypto__1"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.gp-app-ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GpAppIPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateways__2"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-gateways-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IKE Gateways", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKEGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto__3"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "menu-tree-path"=>"IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto__4"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "menu-tree-path"=>"IKE Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKECrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.tunnel-monitor-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Monitor", "help-topic"=>"tunnel_monitor_profiles", "node-config-ids"=>"MonitorProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-mgmt"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.interface-mgmt-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "node-config-ids"=>"InterfaceMgmt", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "node-config-ids"=>"ZoneProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Profile", "node-config-ids"=>"QoSProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Profile", "node-config-ids"=>"LLDPProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Profile", "node-config-ids"=>"BFDProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def gp_app_ipsec_crypto__1 prop_get('gp-app-ipsec-crypto__1') end def gp_app_ipsec_crypto__1=(val) prop_set('gp-app-ipsec-crypto__1', val) end def ike_gateways__2 prop_get('ike-gateways__2') end def ike_gateways__2=(val) prop_set('ike-gateways__2', val) end def ipsec_crypto__3 prop_get('ipsec-crypto__3') end def ipsec_crypto__3=(val) prop_set('ipsec-crypto__3', val) end def ike_crypto__4 prop_get('ike-crypto__4') end def ike_crypto__4=(val) prop_set('ike-crypto__4', val) end def tunnel_monitor prop_get('tunnel-monitor') end def tunnel_monitor=(val) prop_set('tunnel-monitor', val) end def interface_mgmt prop_get('interface-mgmt') end def interface_mgmt=(val) prop_set('interface-mgmt', val) end def zone_protection prop_get('zone-protection') end def zone_protection=(val) prop_set('zone-protection', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def lldp_profile prop_get('lldp-profile') end def lldp_profile=(val) prop_set('lldp-profile', val) end def bfd_profile prop_get('bfd-profile') end def bfd_profile=(val) prop_set('bfd-profile', val) end end # class NetworkProfiles def network_profiles @subclasses['network-profiles'] ||= NetworkProfiles.new(parent_instance: self, create_children: @create_children) end @props={"interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "node-config-ids"=>"Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Zones", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.vlans-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "node-config-ids"=>"VLAN", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualWires", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.network.vm.virtual-routers-disable=True", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__7"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.ipsec-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"IPSec Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecTunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__8"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.gre-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"GRE Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GRETunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dhcp-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP", "node-config-ids"=>"DHCP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxy"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dns-proxy-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxy", "node-config-ids"=>"DNSProxy", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "node-config-ids"=>"QoSInterface", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "node-config-ids"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profile", "node-config-ids"=>"SDWANInterfaceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def ipsec_tunnels__7 prop_get('ipsec-tunnels__7') end def ipsec_tunnels__7=(val) prop_set('ipsec-tunnels__7', val) end def gre_tunnels__8 prop_get('gre-tunnels__8') end def gre_tunnels__8=(val) prop_set('gre-tunnels__8', val) end def dhcp prop_get('dhcp') end def dhcp=(val) prop_set('dhcp', val) end def dns_proxy prop_get('dns-proxy') end def dns_proxy=(val) prop_set('dns-proxy', val) end def qos prop_get('qos') end def qos=(val) prop_set('qos', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def sdwan_interface_profile prop_get('sdwan-interface-profile') end def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ocsp-responder"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"OCSP Responder", "node-config-ids"=>"OCSPResponder", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-exclusion"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL Decryption Exclusion", "node-config-ids"=>"SslDecryptionExclusion", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ocsp_responder prop_get('ocsp-responder') end def ocsp_responder=(val) prop_set('ocsp-responder', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssl_decryption_exclusion prop_get('ssl-decryption-exclusion') end def ssl_decryption_exclusion=(val) prop_set('ssl-decryption-exclusion', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log_settings", "node-config-ids"=> "LogSettingsSystem,LogSettingsConfig,LogSettingsUserID,LogSettingsHIPMatch,LogSettingsCorrelation,LogSettingsGlobalProtect LogSettingsCCAlarms", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "iptag__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IP-Tag", "help-topic"=>"ip_tag_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "cc-alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "manage-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage Logs", "skip-menu-tree-display"=>"template", "help-topic"=>"manage_logs_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def iptag__3 prop_get('iptag__3') end def iptag__3=(val) prop_set('iptag__3', val) end def user_id__4 prop_get('user-id__4') end def user_id__4=(val) prop_set('user-id__4', val) end def hipmatch__5 prop_get('hipmatch__5') end def hipmatch__5=(val) prop_set('hipmatch__5', val) end def globalprotect__6 prop_get('globalprotect__6') end def globalprotect__6=(val) prop_set('globalprotect__6', val) end def correlation__7 prop_get('correlation__7') end def correlation__7=(val) prop_set('correlation__7', val) end def cc_alarm prop_get('cc-alarm') end def cc_alarm=(val) prop_set('cc-alarm', val) end def manage_log prop_get('manage-log') end def manage_log=(val) prop_set('manage-log', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "menu-tree-path"=>"SNMP Trap", "node-config-ids"=>"ServerProfileSNMPTrap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "netflow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"netflow_settings", "node-config-ids"=>"ServerProfileNetflow", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "node-config-ids"=>"ServerProfileRadius", "menu-tree-path"=>"RADIUS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "node-config-ids"=>"ServerProfileTacacs", "menu-tree-path"=>"TACACS+", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "node-config-ids"=>"ServerProfileKerberos", "skip-display"=>"fips-mode,cc-only-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.device.dns-disable=True", "skip-display"=>"single-vsys-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_dns", "menu-tree-path"=>"DNS", "node-config-ids"=>"ServerProfileDNS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mfa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_mfa", "menu-tree-path"=>"Multi Factor Authentication", "node-config-ids"=>"ServerProfileMFA", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def netflow prop_get('netflow') end def netflow=(val) prop_set('netflow', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end def dns prop_get('dns') end def dns=(val) prop_set('dns', val) end def mfa prop_get('mfa') end def mfa=(val) prop_set('mfa', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end @props={"users"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_users", "node-config-ids"=>"LocalUsers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_user_groups", "node-config-ids"=>"LocalUserGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def users prop_get('users') end def users=(val) prop_set('users', val) end def user_groups prop_get('user-groups') end def user_groups=(val) prop_set('user-groups', val) end end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end @props={"high-availability"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.device.high-availability-disable=True", "node-config-ids"=>"HASetup", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-fwd-card"=> {"node-type"=>"element", "node-config-ids"=>"LFCInterface", "menu-tree-path"=>"Log Forwarding Card", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"admin_accounts", "node-config-ids"=>"Administrator", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "admin-roles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AdminRoleHandler", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "access-domain"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"AccessDomain", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_user_id", "node-config-ids"=> "UserIdCollector,ServerMonitor,IncludeExcludeNetwork,UserIdConnSecurity,UserIdAgent,TSAgent,GroupMapping", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "help-topic"=>"data_redistribution", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=> "RDAgent,DataRedistributionCollector,DataRedistributionIPUserIncludeExcludeNetwork,DataRedistributionIPTagIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-quarantine"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Device Quarantine", "help-topic"=>"device_quarantine", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vm-info-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VM Information Sources", "node-config-ids"=>"VMInformationSources", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "troubleshooting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Troubleshooting", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"VirtualSystem", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "shared-gateways"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"SharedGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-pages"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Response Pages", "node-config-ids"=>"ResponsePageTopLevel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scheduled-log-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_export", "node-config-ids"=>"ScheduledLogExport", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "global-protect-client__25"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Client", "prune-on"=>"vpn-disable-mode", "skip-display"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUpdates", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "plugins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"license", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "support"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "master-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Master Key and Diagnostics", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-recommendation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policy_recommendation", "menu-tree-path"=>"Policy Recommendation", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def high_availability prop_get('high-availability') end def high_availability=(val) prop_set('high-availability', val) end def log_fwd_card prop_get('log-fwd-card') end def log_fwd_card=(val) prop_set('log-fwd-card', val) end def config_audit prop_get('config-audit') end def config_audit=(val) prop_set('config-audit', val) end def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def admin_roles prop_get('admin-roles') end def admin_roles=(val) prop_set('admin-roles', val) end def access_domain prop_get('access-domain') end def access_domain=(val) prop_set('access-domain', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def device_quarantine prop_get('device-quarantine') end def device_quarantine=(val) prop_set('device-quarantine', val) end def vm_info_source prop_get('vm-info-source') end def vm_info_source=(val) prop_set('vm-info-source', val) end def troubleshooting prop_get('troubleshooting') end def troubleshooting=(val) prop_set('troubleshooting', val) end def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end def shared_gateways prop_get('shared-gateways') end def shared_gateways=(val) prop_set('shared-gateways', val) end def block_pages prop_get('block-pages') end def block_pages=(val) prop_set('block-pages', val) end def scheduled_log_export prop_get('scheduled-log-export') end def scheduled_log_export=(val) prop_set('scheduled-log-export', val) end def software prop_get('software') end def software=(val) prop_set('software', val) end def global_protect_client__25 prop_get('global-protect-client__25') end def global_protect_client__25=(val) prop_set('global-protect-client__25', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def plugins prop_get('plugins') end def plugins=(val) prop_set('plugins', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end def support prop_get('support') end def support=(val) prop_set('support', val) end def master_key prop_get('master-key') end def master_key=(val) prop_set('master-key', val) end def policy_recommendation prop_get('policy-recommendation') end def policy_recommendation=(val) prop_set('policy-recommendation', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Operations < ConfigClass def has_multiple_values? false end def _section :'operations' end @props={"reboot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-tech-support-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-stats-dump-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "download-core-files"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def reboot prop_get('reboot') end def reboot=(val) prop_set('reboot', val) end def generate_tech_support_file prop_get('generate-tech-support-file') end def generate_tech_support_file=(val) prop_set('generate-tech-support-file', val) end def generate_stats_dump_file prop_get('generate-stats-dump-file') end def generate_stats_dump_file=(val) prop_set('generate-stats-dump-file', val) end def download_core_files prop_get('download-core-files') end def download_core_files=(val) prop_set('download-core-files', val) end end # class Operations def operations @subclasses['operations'] ||= Operations.new(parent_instance: self, create_children: @create_children) end class Privacy < ConfigClass def has_multiple_values? false end def _section :'privacy' end @props={"show-full-ip-addresses"=> {"node-type"=>"element", "menu-tree-path"=>"Show Full IP Addresses", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "show-user-names-in-logs-and-reports"=> {"node-type"=>"element", "menu-tree-path"=>"Show Username In Logs And Reports", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-pcap-files"=> {"node-type"=>"element", "menu-tree-path"=>"View PCAP Files", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def show_full_ip_addresses prop_get('show-full-ip-addresses') end def show_full_ip_addresses=(val) prop_set('show-full-ip-addresses', val) end def show_user_names_in_logs_and_reports prop_get('show-user-names-in-logs-and-reports') end def show_user_names_in_logs_and_reports=(val) prop_set('show-user-names-in-logs-and-reports', val) end def view_pcap_files prop_get('view-pcap-files') end def view_pcap_files=(val) prop_set('view-pcap-files', val) end end # class Privacy def privacy @subclasses['privacy'] ||= Privacy.new(parent_instance: self, create_children: @create_children) end class Save < ConfigClass def has_multiple_values? false end def _section :'save' end @props={"partial-save"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "save-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def partial_save prop_get('partial-save') end def partial_save=(val) prop_set('partial-save', val) end def save_for_other_admins prop_get('save-for-other-admins') end def save_for_other_admins=(val) prop_set('save-for-other-admins', val) end end # class Save def save @subclasses['save'] ||= Save.new(parent_instance: self, create_children: @create_children) end class Commit < ConfigClass def has_multiple_values? false end def _section :'commit' end @props={"device"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def device prop_get('device') end def device=(val) prop_set('device', val) end def commit_for_other_admins prop_get('commit-for-other-admins') end def commit_for_other_admins=(val) prop_set('commit-for-other-admins', val) end end # class Commit def commit @subclasses['commit'] ||= Commit.new(parent_instance: self, create_children: @create_children) end class Global < ConfigClass def has_multiple_values? false end def _section :'global' end @props={"system-alarms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_alarms", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def system_alarms prop_get('system-alarms') end def system_alarms=(val) prop_set('system-alarms', val) end end # class Global def global @subclasses['global'] ||= Global.new(parent_instance: self, create_children: @create_children) end @props={"dashboard"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "acc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"ACC", "prune-on-sdb"=>"cfg.vm-license-type=vm50l", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tasks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def dashboard prop_get('dashboard') end def dashboard=(val) prop_set('dashboard', val) end def acc prop_get('acc') end def acc=(val) prop_set('acc', val) end def tasks prop_get('tasks') end def tasks=(val) prop_set('tasks', val) end end # class Webui def webui @subclasses['webui'] ||= Webui.new(parent_instance: self, create_children: @create_children) end class Xmlapi < ConfigClass def has_multiple_values? false end def _section :'xmlapi' end @props={"report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Report", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Configuration", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "op"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Operational Requests", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Commit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IoT Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Export", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "import"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Import", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def report prop_get('report') end def report=(val) prop_set('report', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def op prop_get('op') end def op=(val) prop_set('op', val) end def commit prop_get('commit') end def commit=(val) prop_set('commit', val) end def user_id prop_get('user-id') end def user_id=(val) prop_set('user-id', val) end def iot prop_get('iot') end def iot=(val) prop_set('iot', val) end def export prop_get('export') end def export=(val) prop_set('export', val) end def import prop_get('import') end def import=(val) prop_set('import', val) end end # class Xmlapi def xmlapi @subclasses['xmlapi'] ||= Xmlapi.new(parent_instance: self, create_children: @create_children) end class Restapi < ConfigClass def has_multiple_values? false end def _section :'restapi' end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"GlobalProtect HIP Objects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"GlobalProtect HIP Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "external-dynamic-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-spyware-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-vulnerability-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-url-categories"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"custom_url_categories", "menu-tree-path"=>"URL Category", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "antivirus-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Filtering Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"WildFire Analysis Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"GTP Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection Secuirty Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-enforcements"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-path-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-path-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Path Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-saas-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Saas Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-traffic-distribution-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-traffic-distribution-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Traffic Distribution Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-error-correction-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Error Correction Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def globalprotect_hip_objects prop_get('globalprotect-hip-objects') end def globalprotect_hip_objects=(val) prop_set('globalprotect-hip-objects', val) end def globalprotect_hip_profiles prop_get('globalprotect-hip-profiles') end def globalprotect_hip_profiles=(val) prop_set('globalprotect-hip-profiles', val) end def external_dynamic_lists prop_get('external-dynamic-lists') end def external_dynamic_lists=(val) prop_set('external-dynamic-lists', val) end def custom_data_patterns prop_get('custom-data-patterns') end def custom_data_patterns=(val) prop_set('custom-data-patterns', val) end def custom_spyware_signatures prop_get('custom-spyware-signatures') end def custom_spyware_signatures=(val) prop_set('custom-spyware-signatures', val) end def custom_vulnerability_signatures prop_get('custom-vulnerability-signatures') end def custom_vulnerability_signatures=(val) prop_set('custom-vulnerability-signatures', val) end def custom_url_categories prop_get('custom-url-categories') end def custom_url_categories=(val) prop_set('custom-url-categories', val) end def antivirus_security_profiles prop_get('antivirus-security-profiles') end def antivirus_security_profiles=(val) prop_set('antivirus-security-profiles', val) end def anti_spyware_security_profiles prop_get('anti-spyware-security-profiles') end def anti_spyware_security_profiles=(val) prop_set('anti-spyware-security-profiles', val) end def vulnerability_protection_security_profiles prop_get('vulnerability-protection-security-profiles') end def vulnerability_protection_security_profiles=(val) prop_set('vulnerability-protection-security-profiles', val) end def url_filtering_security_profiles prop_get('url-filtering-security-profiles') end def url_filtering_security_profiles=(val) prop_set('url-filtering-security-profiles', val) end def file_blocking_security_profiles prop_get('file-blocking-security-profiles') end def file_blocking_security_profiles=(val) prop_set('file-blocking-security-profiles', val) end def wildfire_analysis_security_profiles prop_get('wildfire-analysis-security-profiles') end def wildfire_analysis_security_profiles=(val) prop_set('wildfire-analysis-security-profiles', val) end def data_filtering_security_profiles prop_get('data-filtering-security-profiles') end def data_filtering_security_profiles=(val) prop_set('data-filtering-security-profiles', val) end def dos_protection_security_profiles prop_get('dos-protection-security-profiles') end def dos_protection_security_profiles=(val) prop_set('dos-protection-security-profiles', val) end def gtp_protection_security_profiles prop_get('gtp-protection-security-profiles') end def gtp_protection_security_profiles=(val) prop_set('gtp-protection-security-profiles', val) end def sctp_protection_security_profiles prop_get('sctp-protection-security-profiles') end def sctp_protection_security_profiles=(val) prop_set('sctp-protection-security-profiles', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding_profiles prop_get('log-forwarding-profiles') end def log_forwarding_profiles=(val) prop_set('log-forwarding-profiles', val) end def authentication_enforcements prop_get('authentication-enforcements') end def authentication_enforcements=(val) prop_set('authentication-enforcements', val) end def decryption_profiles prop_get('decryption-profiles') end def decryption_profiles=(val) prop_set('decryption-profiles', val) end def decryption_forwarding_profiles prop_get('decryption-forwarding-profiles') end def decryption_forwarding_profiles=(val) prop_set('decryption-forwarding-profiles', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end def sdwan_path_quality_profiles prop_get('sdwan-path-quality-profiles') end def sdwan_path_quality_profiles=(val) prop_set('sdwan-path-quality-profiles', val) end def sdwan_saas_quality_profiles prop_get('sdwan-saas-quality-profiles') end def sdwan_saas_quality_profiles=(val) prop_set('sdwan-saas-quality-profiles', val) end def sdwan_traffic_distribution_profiles prop_get('sdwan-traffic-distribution-profiles') end def sdwan_traffic_distribution_profiles=(val) prop_set('sdwan-traffic-distribution-profiles', val) end def sdwan_error_correction_profiles prop_get('sdwan-error-correction-profiles') end def sdwan_error_correction_profiles=(val) prop_set('sdwan-error-correction-profiles', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"nat_rules", "menu-tree-path"=>"NAT Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "menu-tree-path"=>"QoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-based-forwarding-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspection-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "menu-tree-path"=>"DoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"sdwan-rules", "menu-tree-path"=>"SD-WAN Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def security_rules prop_get('security-rules') end def security_rules=(val) prop_set('security-rules', val) end def nat_rules prop_get('nat-rules') end def nat_rules=(val) prop_set('nat-rules', val) end def qos_rules prop_get('qos-rules') end def qos_rules=(val) prop_set('qos-rules', val) end def policy_based_forwarding_rules prop_get('policy-based-forwarding-rules') end def policy_based_forwarding_rules=(val) prop_set('policy-based-forwarding-rules', val) end def decryption_rules prop_get('decryption-rules') end def decryption_rules=(val) prop_set('decryption-rules', val) end def tunnel_inspection_rules prop_get('tunnel-inspection-rules') end def tunnel_inspection_rules=(val) prop_set('tunnel-inspection-rules', val) end def application_override_rules prop_get('application-override-rules') end def application_override_rules=(val) prop_set('application-override-rules', val) end def authentication_rules prop_get('authentication-rules') end def authentication_rules=(val) prop_set('authentication-rules', val) end def dos_rules prop_get('dos-rules') end def dos_rules=(val) prop_set('dos-rules', val) end def sdwan_rules prop_get('sdwan-rules') end def sdwan_rules=(val) prop_set('sdwan-rules', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end @props={"aggregate-ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "menu-tree-path"=>"VLAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "loopback-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bgp-routing-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BGP Routing Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__12"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__13"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GRE Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-servers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-relays"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Relays", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxies"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxies", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Portals", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Gateways", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-mdm-servers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect MDM Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless Apps", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless App Groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-ipsec-crypto-network-profiles__24"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GlobalProtect IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateway-network-profiles__25"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Gateway Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto-network-profiles__26"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto-network-profiles__27"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_monitor_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-management-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def aggregate_ethernet_interfaces prop_get('aggregate-ethernet-interfaces') end def aggregate_ethernet_interfaces=(val) prop_set('aggregate-ethernet-interfaces', val) end def ethernet_interfaces prop_get('ethernet-interfaces') end def ethernet_interfaces=(val) prop_set('ethernet-interfaces', val) end def vlan_interfaces prop_get('vlan-interfaces') end def vlan_interfaces=(val) prop_set('vlan-interfaces', val) end def loopback_interfaces prop_get('loopback-interfaces') end def loopback_interfaces=(val) prop_set('loopback-interfaces', val) end def tunnel_interfaces prop_get('tunnel-interfaces') end def tunnel_interfaces=(val) prop_set('tunnel-interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end def bgp_routing_profiles prop_get('bgp-routing-profiles') end def bgp_routing_profiles=(val) prop_set('bgp-routing-profiles', val) end def ipsec_tunnels__12 prop_get('ipsec-tunnels__12') end def ipsec_tunnels__12=(val) prop_set('ipsec-tunnels__12', val) end def gre_tunnels__13 prop_get('gre-tunnels__13') end def gre_tunnels__13=(val) prop_set('gre-tunnels__13', val) end def dhcp_servers prop_get('dhcp-servers') end def dhcp_servers=(val) prop_set('dhcp-servers', val) end def dhcp_relays prop_get('dhcp-relays') end def dhcp_relays=(val) prop_set('dhcp-relays', val) end def dns_proxies prop_get('dns-proxies') end def dns_proxies=(val) prop_set('dns-proxies', val) end def globalprotect_portals prop_get('globalprotect-portals') end def globalprotect_portals=(val) prop_set('globalprotect-portals', val) end def globalprotect_gateways prop_get('globalprotect-gateways') end def globalprotect_gateways=(val) prop_set('globalprotect-gateways', val) end def globalprotect_mdm_servers prop_get('globalprotect-mdm-servers') end def globalprotect_mdm_servers=(val) prop_set('globalprotect-mdm-servers', val) end def globalprotect_clientless_apps prop_get('globalprotect-clientless-apps') end def globalprotect_clientless_apps=(val) prop_set('globalprotect-clientless-apps', val) end def globalprotect_clientless_app_groups prop_get('globalprotect-clientless-app-groups') end def globalprotect_clientless_app_groups=(val) prop_set('globalprotect-clientless-app-groups', val) end def qos_interfaces prop_get('qos-interfaces') end def qos_interfaces=(val) prop_set('qos-interfaces', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def globalprotect_ipsec_crypto_network_profiles__24 prop_get('globalprotect-ipsec-crypto-network-profiles__24') end def globalprotect_ipsec_crypto_network_profiles__24=(val) prop_set('globalprotect-ipsec-crypto-network-profiles__24', val) end def ike_gateway_network_profiles__25 prop_get('ike-gateway-network-profiles__25') end def ike_gateway_network_profiles__25=(val) prop_set('ike-gateway-network-profiles__25', val) end def ipsec_crypto_network_profiles__26 prop_get('ipsec-crypto-network-profiles__26') end def ipsec_crypto_network_profiles__26=(val) prop_set('ipsec-crypto-network-profiles__26', val) end def ike_crypto_network_profiles__27 prop_get('ike-crypto-network-profiles__27') end def ike_crypto_network_profiles__27=(val) prop_set('ike-crypto-network-profiles__27', val) end def tunnel_monitor_network_profiles prop_get('tunnel-monitor-network-profiles') end def tunnel_monitor_network_profiles=(val) prop_set('tunnel-monitor-network-profiles', val) end def interface_management_network_profiles prop_get('interface-management-network-profiles') end def interface_management_network_profiles=(val) prop_set('interface-management-network-profiles', val) end def zone_protection_network_profiles prop_get('zone-protection-network-profiles') end def zone_protection_network_profiles=(val) prop_set('zone-protection-network-profiles', val) end def qos_network_profiles prop_get('qos-network-profiles') end def qos_network_profiles=(val) prop_set('qos-network-profiles', val) end def lldp_network_profiles prop_get('lldp-network-profiles') end def lldp_network_profiles=(val) prop_set('lldp-network-profiles', val) end def bfd_network_profiles prop_get('bfd-network-profiles') end def bfd_network_profiles=(val) prop_set('bfd-network-profiles', val) end def sdwan_interfaces prop_get('sdwan-interfaces') end def sdwan_interfaces=(val) prop_set('sdwan-interfaces', val) end def sdwan_interface_profiles prop_get('sdwan-interface-profiles') end def sdwan_interface_profiles=(val) prop_set('sdwan-interface-profiles', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end @props={} end # class Restapi def restapi @subclasses['restapi'] ||= Restapi.new(parent_instance: self, create_children: @create_children) end @props={"cli"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"superuser"}, {"value"=>"superreader"}, {"value"=>"deviceadmin"}, {"value"=>"devicereader"}]}} def cli prop_get('cli') end def cli=(val) prop_set('cli', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Vsys__2 < ConfigClass def has_multiple_values? false end def _section :'vsys__2' end class Webui < ConfigClass def has_multiple_values? false end def _section :'webui' end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end class Logs < ConfigClass def has_multiple_values? false end def _section :'logs' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"traffic_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"threat_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"URL Filtering", "help-topic"=>"url_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"WildFire Submissions", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filter_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_match_log", "menu-tree-path"=>"HIP Match", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ip_tag", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"userid_log", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_log", "menu-tree-path"=>"GTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_log", "menu-tree-path"=>"Tunnel Inspection", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_log", "menu-tree-path"=>"SCTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def hipmatch__6 prop_get('hipmatch__6') end def hipmatch__6=(val) prop_set('hipmatch__6', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end end # class Logs def logs @subclasses['logs'] ||= Logs.new(parent_instance: self, create_children: @create_children) end class AutomatedCorrelationEngine < ConfigClass def has_multiple_values? false end def _section :'automated-correlation-engine' end @props={"correlation-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "correlated-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def correlation_objects prop_get('correlation-objects') end def correlation_objects=(val) prop_set('correlation-objects', val) end def correlated_events prop_get('correlated-events') end def correlated_events=(val) prop_set('correlated-events', val) end end # class AutomatedCorrelationEngine def automated_correlation_engine @subclasses['automated-correlation-engine'] ||= AutomatedCorrelationEngine.new(parent_instance: self, create_children: @create_children) end class PdfReports < ConfigClass def has_multiple_values? false end def _section :'pdf-reports' end @props={"manage-pdf-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage PDF Summary", "help-topic"=>"manage_pdf_summary_report", "node-config-ids"=>"ManagePdfSummary", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pdf-summary-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"PDF Summary Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-activity-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"UserActivityReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saas-application-usage-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Application Usage", "node-config-ids"=>"SaasAppUsageReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "report-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ReportGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email-scheduler"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"report_email", "node-config-ids"=>"EmailScheduler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def manage_pdf_summary prop_get('manage-pdf-summary') end def manage_pdf_summary=(val) prop_set('manage-pdf-summary', val) end def pdf_summary_reports prop_get('pdf-summary-reports') end def pdf_summary_reports=(val) prop_set('pdf-summary-reports', val) end def user_activity_report prop_get('user-activity-report') end def user_activity_report=(val) prop_set('user-activity-report', val) end def saas_application_usage_report prop_get('saas-application-usage-report') end def saas_application_usage_report=(val) prop_set('saas-application-usage-report', val) end def report_groups prop_get('report-groups') end def report_groups=(val) prop_set('report-groups', val) end def email_scheduler prop_get('email-scheduler') end def email_scheduler=(val) prop_set('email-scheduler', val) end end # class PdfReports def pdf_reports @subclasses['pdf-reports'] ||= PdfReports.new(parent_instance: self, create_children: @create_children) end class CustomReports < ConfigClass def has_multiple_values? false end def _section :'custom-reports' end @props={"application-statistics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "prune-on"=>"vpn-disable-mode", "menu-tree-path"=>"HIP Match", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"WildFire Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"Authentication", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def application_statistics prop_get('application-statistics') end def application_statistics=(val) prop_set('application-statistics', val) end def data_filtering_log prop_get('data-filtering-log') end def data_filtering_log=(val) prop_set('data-filtering-log', val) end def threat_log prop_get('threat-log') end def threat_log=(val) prop_set('threat-log', val) end def threat_summary prop_get('threat-summary') end def threat_summary=(val) prop_set('threat-summary', val) end def traffic_log prop_get('traffic-log') end def traffic_log=(val) prop_set('traffic-log', val) end def traffic_summary prop_get('traffic-summary') end def traffic_summary=(val) prop_set('traffic-summary', val) end def url_log prop_get('url-log') end def url_log=(val) prop_set('url-log', val) end def url_summary prop_get('url-summary') end def url_summary=(val) prop_set('url-summary', val) end def hipmatch__9 prop_get('hipmatch__9') end def hipmatch__9=(val) prop_set('hipmatch__9', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def wildfire_log prop_get('wildfire-log') end def wildfire_log=(val) prop_set('wildfire-log', val) end def gtp_log prop_get('gtp-log') end def gtp_log=(val) prop_set('gtp-log', val) end def gtp_summary prop_get('gtp-summary') end def gtp_summary=(val) prop_set('gtp-summary', val) end def tunnel_log prop_get('tunnel-log') end def tunnel_log=(val) prop_set('tunnel-log', val) end def tunnel_summary prop_get('tunnel-summary') end def tunnel_summary=(val) prop_set('tunnel-summary', val) end def sctp_log prop_get('sctp-log') end def sctp_log=(val) prop_set('sctp-log', val) end def sctp_summary prop_get('sctp-summary') end def sctp_summary=(val) prop_set('sctp-summary', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end end # class CustomReports def custom_reports @subclasses['custom-reports'] ||= CustomReports.new(parent_instance: self, create_children: @create_children) end @props={"external-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Logs", "help-topic"=>"external_logs", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "app-scope"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "session-browser"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-ip-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Block IP List", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "view-custom-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Scheduled Custom Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def external_logs prop_get('external-logs') end def external_logs=(val) prop_set('external-logs', val) end def app_scope prop_get('app-scope') end def app_scope=(val) prop_set('app-scope', val) end def session_browser prop_get('session-browser') end def session_browser=(val) prop_set('session-browser', val) end def block_ip_list prop_get('block-ip-list') end def block_ip_list=(val) prop_set('block-ip-list', val) end def view_custom_reports prop_get('view-custom-reports') end def view_custom_reports=(val) prop_set('view-custom-reports', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Security", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "node-config-ids"=> "DeviceSecurityRules1,DeviceSecurityRules2,DeviceSecurityRules3,DeviceSecurityRules4,DeviceSecurityRules5,DeviceSecurityRules6", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.nat-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"NAT", "help-topic"=>"nat_rules", "node-config-ids"=>"DeviceNATRules1,DeviceNATRules2,DeviceNATRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceQOSRules1,DeviceQOSRules2,DeviceQOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pbf-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.pbf-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Policy Based Forwarding", "node-config-ids"=>"DevicePBFRules1,DevicePBFRules2,DevicePBFRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Decryption", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "node-config-ids"=> "DeviceDecryptionRules1,DeviceDecryptionRules2,DeviceDecryptionRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspect-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "node-config-ids"=> "DeviceTunnelInspectRules1,DeviceTunnelInspectRules2,DeviceTunnelInspectRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Application Override", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "node-config-ids"=> "DeviceAppOverrideRules1,DeviceAppOverrideRules2,DeviceAppOverrideRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "node-config-ids"=> "DeviceAuthenticationRules1,DeviceAuthenticationRules2,DeviceAuthenticationRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DoS Protection", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "node-config-ids"=>"DeviceDOSRules1,DeviceDOSRules2,DeviceDOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN", "help-topic"=>"sdwan_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceSDWANRules1,DeviceSDWANRules2,DeviceSDWANRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "rule-hit-count-reset"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Rule Hit Count Reset", "help-topic"=>"rule_hit_count_reset", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def security_rulebase prop_get('security-rulebase') end def security_rulebase=(val) prop_set('security-rulebase', val) end def nat_rulebase prop_get('nat-rulebase') end def nat_rulebase=(val) prop_set('nat-rulebase', val) end def qos_rulebase prop_get('qos-rulebase') end def qos_rulebase=(val) prop_set('qos-rulebase', val) end def pbf_rulebase prop_get('pbf-rulebase') end def pbf_rulebase=(val) prop_set('pbf-rulebase', val) end def ssl_decryption_rulebase prop_get('ssl-decryption-rulebase') end def ssl_decryption_rulebase=(val) prop_set('ssl-decryption-rulebase', val) end def tunnel_inspect_rulebase prop_get('tunnel-inspect-rulebase') end def tunnel_inspect_rulebase=(val) prop_set('tunnel-inspect-rulebase', val) end def application_override_rulebase prop_get('application-override-rulebase') end def application_override_rulebase=(val) prop_set('application-override-rulebase', val) end def authentication_rulebase prop_get('authentication-rulebase') end def authentication_rulebase=(val) prop_set('authentication-rulebase', val) end def dos_rulebase prop_get('dos-rulebase') end def dos_rulebase=(val) prop_set('dos-rulebase', val) end def sdwan_rulebase prop_get('sdwan-rulebase') end def sdwan_rulebase=(val) prop_set('sdwan-rulebase', val) end def rule_hit_count_reset prop_get('rule-hit-count-reset') end def rule_hit_count_reset=(val) prop_set('rule-hit-count-reset', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end class GlobalProtect__12 < ConfigClass def has_multiple_values? false end def _section :'global-protect__12' end @props={"hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"HIP Objects", "node-config-ids"=>"HIPObjects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"HIP Profiles", "node-config-ids"=>"HIPProfiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def hip_objects prop_get('hip-objects') end def hip_objects=(val) prop_set('hip-objects', val) end def hip_profiles prop_get('hip-profiles') end def hip_profiles=(val) prop_set('hip-profiles', val) end end # class GlobalProtect__12 def global_protect__12 @subclasses['global-protect__12'] ||= GlobalProtect__12.new(parent_instance: self, create_children: @create_children) end class CustomObjects < ConfigClass def has_multiple_values? false end def _section :'custom-objects' end @props={"data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DataPatterns", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "spyware"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "node-config-ids"=>"CustomSpyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "node-config-ids"=>"CustomVulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-category"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Category", "help-topic"=>"custom_url_categories", "node-config-ids"=>"CustomURLCategory", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def data_patterns prop_get('data-patterns') end def data_patterns=(val) prop_set('data-patterns', val) end def spyware prop_get('spyware') end def spyware=(val) prop_set('spyware', val) end def vulnerability prop_get('vulnerability') end def vulnerability=(val) prop_set('vulnerability', val) end def url_category prop_get('url-category') end def url_category=(val) prop_set('url-category', val) end end # class CustomObjects def custom_objects @subclasses['custom-objects'] ||= CustomObjects.new(parent_instance: self, create_children: @create_children) end class SecurityProfiles < ConfigClass def has_multiple_values? false end def _section :'security-profiles' end @props={"antivirus"=> {"node-type"=>"element", "menu-tree-path"=>"Antivirus", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiVirusProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware"=> {"node-type"=>"element", "menu-tree-path"=>"Anti-Spyware", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiSpywareProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"VulnerabilityProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "menu-tree-path"=>"URL Filtering", "skip-display"=>"shared-gateway", "node-config-ids"=>"URLFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"FileBlocking", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis"=> {"node-type"=>"element", "menu-tree-path"=>"WildFire Analysis", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"WildFireAnalysis", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"DataFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection", "node-config-ids"=>"DoSProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"Mobile Network Protection", "node-config-ids"=>"GTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection", "node-config-ids"=>"SCTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def antivirus prop_get('antivirus') end def antivirus=(val) prop_set('antivirus', val) end def anti_spyware prop_get('anti-spyware') end def anti_spyware=(val) prop_set('anti-spyware', val) end def vulnerability_protection prop_get('vulnerability-protection') end def vulnerability_protection=(val) prop_set('vulnerability-protection', val) end def url_filtering prop_get('url-filtering') end def url_filtering=(val) prop_set('url-filtering', val) end def file_blocking prop_get('file-blocking') end def file_blocking=(val) prop_set('file-blocking', val) end def wildfire_analysis prop_get('wildfire-analysis') end def wildfire_analysis=(val) prop_set('wildfire-analysis', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def dos_protection prop_get('dos-protection') end def dos_protection=(val) prop_set('dos-protection', val) end def gtp_protection prop_get('gtp-protection') end def gtp_protection=(val) prop_set('gtp-protection', val) end def sctp_protection prop_get('sctp-protection') end def sctp_protection=(val) prop_set('sctp-protection', val) end end # class SecurityProfiles def security_profiles @subclasses['security-profiles'] ||= SecurityProfiles.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end @props={"decryption-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "menu-tree-path"=>"Decryption Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profile"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "menu-tree-path"=>"Forwarding Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionForwardingProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def decryption_profile prop_get('decryption-profile') end def decryption_profile=(val) prop_set('decryption-profile', val) end def decryption_forwarding_profile prop_get('decryption-forwarding-profile') end def decryption_forwarding_profile=(val) prop_set('decryption-forwarding-profile', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end @props={"sdwan-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Path Quality Profile", "node-config-ids"=>"SDWANProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Quality Profile", "node-config-ids"=>"SDWANSaaSQualityProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-dist-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic Distribution Profile", "node-config-ids"=>"SDWANDistProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Error Correction Profile", "node-config-ids"=>"SDWANErrorCorrectionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def sdwan_profile prop_get('sdwan-profile') end def sdwan_profile=(val) prop_set('sdwan-profile', val) end def sdwan_saas_quality_profile prop_get('sdwan-saas-quality-profile') end def sdwan_saas_quality_profile=(val) prop_set('sdwan-saas-quality-profile', val) end def sdwan_dist_profile prop_get('sdwan-dist-profile') end def sdwan_dist_profile=(val) prop_set('sdwan-dist-profile', val) end def sdwan_error_correction_profile prop_get('sdwan-error-correction-profile') end def sdwan_error_correction_profile=(val) prop_set('sdwan-error-correction-profile', val) end end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Address", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AddressGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Region", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUserGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Application", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationFilter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Service", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ServiceGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Tag", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-block-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Dynamic Lists", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "node-config-ids"=>"DynamicBlockList", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"SecurityProfileGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "node-config-ids"=>"LogForwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "node-config-ids"=>"AuthenticationObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Schedule", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def dynamic_block_lists prop_get('dynamic-block-lists') end def dynamic_block_lists=(val) prop_set('dynamic-block-lists', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding prop_get('log-forwarding') end def log_forwarding=(val) prop_set('log-forwarding', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class GlobalProtect__2 < ConfigClass def has_multiple_values? false end def _section :'global-protect__2' end @props={"portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"portals_globalprotect", "node-config-ids"=>"GlobalProtectPortal", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gateways_globalprotect", "node-config-ids"=>"GlobalProtectGatewayVSYS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mdm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"MDM", "help-topic"=>"mdm_globalprotect", "node-config-ids"=>"GlobalProtectMDM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_apps", "node-config-ids"=>"GlobalProtectClientlessApp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_app_groups", "node-config-ids"=>"GlobalProtectClientlessAppGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def portals prop_get('portals') end def portals=(val) prop_set('portals', val) end def gateways prop_get('gateways') end def gateways=(val) prop_set('gateways', val) end def mdm prop_get('mdm') end def mdm=(val) prop_set('mdm', val) end def clientless_apps prop_get('clientless-apps') end def clientless_apps=(val) prop_set('clientless-apps', val) end def clientless_app_groups prop_get('clientless-app-groups') end def clientless_app_groups=(val) prop_set('clientless-app-groups', val) end end # class GlobalProtect__2 def global_protect__2 @subclasses['global-protect__2'] ||= GlobalProtect__2.new(parent_instance: self, create_children: @create_children) end @props={"zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Zones", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profile", "node-config-ids"=>"SDWANInterfaceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def sdwan_interface_profile prop_get('sdwan-interface-profile') end def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ocsp-responder"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"OCSP Responder", "node-config-ids"=>"OCSPResponder", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-exclusion"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL Decryption Exclusion", "node-config-ids"=>"SslDecryptionExclusion", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ocsp_responder prop_get('ocsp-responder') end def ocsp_responder=(val) prop_set('ocsp-responder', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssl_decryption_exclusion prop_get('ssl-decryption-exclusion') end def ssl_decryption_exclusion=(val) prop_set('ssl-decryption-exclusion', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log_settings", "node-config-ids"=> "LogSettingsSystem,LogSettingsConfig,LogSettingsUserID,LogSettingsHIPMatch,LogSettingsCorrelation,LogSettingsGlobalProtect LogSettingsCCAlarms", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "iptag__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IP-Tag", "help-topic"=>"ip_tag_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def iptag__3 prop_get('iptag__3') end def iptag__3=(val) prop_set('iptag__3', val) end def user_id__4 prop_get('user-id__4') end def user_id__4=(val) prop_set('user-id__4', val) end def hipmatch__5 prop_get('hipmatch__5') end def hipmatch__5=(val) prop_set('hipmatch__5', val) end def globalprotect__6 prop_get('globalprotect__6') end def globalprotect__6=(val) prop_set('globalprotect__6', val) end def correlation__7 prop_get('correlation__7') end def correlation__7=(val) prop_set('correlation__7', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "menu-tree-path"=>"SNMP Trap", "node-config-ids"=>"ServerProfileSNMPTrap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "netflow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"netflow_settings", "node-config-ids"=>"ServerProfileNetflow", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "node-config-ids"=>"ServerProfileRadius", "menu-tree-path"=>"RADIUS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "node-config-ids"=>"ServerProfileTacacs", "menu-tree-path"=>"TACACS+", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "node-config-ids"=>"ServerProfileKerberos", "skip-display"=>"fips-mode,cc-only-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.device.dns-disable=True", "skip-display"=>"single-vsys-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_dns", "menu-tree-path"=>"DNS", "node-config-ids"=>"ServerProfileDNS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mfa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_mfa", "menu-tree-path"=>"Multi Factor Authentication", "node-config-ids"=>"ServerProfileMFA", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def netflow prop_get('netflow') end def netflow=(val) prop_set('netflow', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end def dns prop_get('dns') end def dns=(val) prop_set('dns', val) end def mfa prop_get('mfa') end def mfa=(val) prop_set('mfa', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end @props={"users"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_users", "node-config-ids"=>"LocalUsers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_user_groups", "node-config-ids"=>"LocalUserGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def users prop_get('users') end def users=(val) prop_set('users', val) end def user_groups prop_get('user-groups') end def user_groups=(val) prop_set('user-groups', val) end end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end @props={"administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"admin_accounts", "node-config-ids"=>"Administrator", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_user_id", "node-config-ids"=> "UserIdCollector,ServerMonitor,IncludeExcludeNetwork,UserIdConnSecurity,UserIdAgent,TSAgent,GroupMapping", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "help-topic"=>"data_redistribution", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=> "RDAgent,DataRedistributionCollector,DataRedistributionIPUserIncludeExcludeNetwork,DataRedistributionIPTagIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-quarantine"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Device Quarantine", "help-topic"=>"device_quarantine", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vm-info-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VM Information Sources", "node-config-ids"=>"VMInformationSources", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "troubleshooting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Troubleshooting", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-pages"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Response Pages", "node-config-ids"=>"ResponsePageTopLevel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-recommendation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policy_recommendation", "menu-tree-path"=>"Policy Recommendation", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def device_quarantine prop_get('device-quarantine') end def device_quarantine=(val) prop_set('device-quarantine', val) end def vm_info_source prop_get('vm-info-source') end def vm_info_source=(val) prop_set('vm-info-source', val) end def troubleshooting prop_get('troubleshooting') end def troubleshooting=(val) prop_set('troubleshooting', val) end def block_pages prop_get('block-pages') end def block_pages=(val) prop_set('block-pages', val) end def policy_recommendation prop_get('policy-recommendation') end def policy_recommendation=(val) prop_set('policy-recommendation', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Operations < ConfigClass def has_multiple_values? false end def _section :'operations' end @props={"reboot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-tech-support-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-stats-dump-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "download-core-files"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def reboot prop_get('reboot') end def reboot=(val) prop_set('reboot', val) end def generate_tech_support_file prop_get('generate-tech-support-file') end def generate_tech_support_file=(val) prop_set('generate-tech-support-file', val) end def generate_stats_dump_file prop_get('generate-stats-dump-file') end def generate_stats_dump_file=(val) prop_set('generate-stats-dump-file', val) end def download_core_files prop_get('download-core-files') end def download_core_files=(val) prop_set('download-core-files', val) end end # class Operations def operations @subclasses['operations'] ||= Operations.new(parent_instance: self, create_children: @create_children) end class Privacy < ConfigClass def has_multiple_values? false end def _section :'privacy' end @props={"show-full-ip-addresses"=> {"node-type"=>"element", "menu-tree-path"=>"Show Full IP Addresses", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "show-user-names-in-logs-and-reports"=> {"node-type"=>"element", "menu-tree-path"=>"Show Username In Logs And Reports", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-pcap-files"=> {"node-type"=>"element", "menu-tree-path"=>"View PCAP Files", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def show_full_ip_addresses prop_get('show-full-ip-addresses') end def show_full_ip_addresses=(val) prop_set('show-full-ip-addresses', val) end def show_user_names_in_logs_and_reports prop_get('show-user-names-in-logs-and-reports') end def show_user_names_in_logs_and_reports=(val) prop_set('show-user-names-in-logs-and-reports', val) end def view_pcap_files prop_get('view-pcap-files') end def view_pcap_files=(val) prop_set('view-pcap-files', val) end end # class Privacy def privacy @subclasses['privacy'] ||= Privacy.new(parent_instance: self, create_children: @create_children) end class Save < ConfigClass def has_multiple_values? false end def _section :'save' end @props={"partial-save"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "save-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def partial_save prop_get('partial-save') end def partial_save=(val) prop_set('partial-save', val) end def save_for_other_admins prop_get('save-for-other-admins') end def save_for_other_admins=(val) prop_set('save-for-other-admins', val) end end # class Save def save @subclasses['save'] ||= Save.new(parent_instance: self, create_children: @create_children) end class Commit < ConfigClass def has_multiple_values? false end def _section :'commit' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end def commit_for_other_admins prop_get('commit-for-other-admins') end def commit_for_other_admins=(val) prop_set('commit-for-other-admins', val) end end # class Commit def commit @subclasses['commit'] ||= Commit.new(parent_instance: self, create_children: @create_children) end @props={"dashboard"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "acc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"ACC", "prune-on-sdb"=>"cfg.vm-license-type=vm50l", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tasks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def dashboard prop_get('dashboard') end def dashboard=(val) prop_set('dashboard', val) end def acc prop_get('acc') end def acc=(val) prop_set('acc', val) end def tasks prop_get('tasks') end def tasks=(val) prop_set('tasks', val) end end # class Webui def webui @subclasses['webui'] ||= Webui.new(parent_instance: self, create_children: @create_children) end class Xmlapi < ConfigClass def has_multiple_values? false end def _section :'xmlapi' end @props={"report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Report", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Configuration", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "op"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Operational Requests", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Commit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IoT Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Export", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "import"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Import", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def report prop_get('report') end def report=(val) prop_set('report', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def op prop_get('op') end def op=(val) prop_set('op', val) end def commit prop_get('commit') end def commit=(val) prop_set('commit', val) end def user_id prop_get('user-id') end def user_id=(val) prop_set('user-id', val) end def iot prop_get('iot') end def iot=(val) prop_set('iot', val) end def export prop_get('export') end def export=(val) prop_set('export', val) end def import prop_get('import') end def import=(val) prop_set('import', val) end end # class Xmlapi def xmlapi @subclasses['xmlapi'] ||= Xmlapi.new(parent_instance: self, create_children: @create_children) end class Restapi < ConfigClass def has_multiple_values? false end def _section :'restapi' end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"GlobalProtect HIP Objects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"GlobalProtect HIP Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "external-dynamic-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-spyware-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-vulnerability-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-url-categories"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"custom_url_categories", "menu-tree-path"=>"URL Category", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "antivirus-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Filtering Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"WildFire Analysis Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"GTP Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection Secuirty Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-enforcements"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-path-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-path-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Path Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-saas-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Saas Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-traffic-distribution-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-traffic-distribution-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Traffic Distribution Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-error-correction-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Error Correction Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def globalprotect_hip_objects prop_get('globalprotect-hip-objects') end def globalprotect_hip_objects=(val) prop_set('globalprotect-hip-objects', val) end def globalprotect_hip_profiles prop_get('globalprotect-hip-profiles') end def globalprotect_hip_profiles=(val) prop_set('globalprotect-hip-profiles', val) end def external_dynamic_lists prop_get('external-dynamic-lists') end def external_dynamic_lists=(val) prop_set('external-dynamic-lists', val) end def custom_data_patterns prop_get('custom-data-patterns') end def custom_data_patterns=(val) prop_set('custom-data-patterns', val) end def custom_spyware_signatures prop_get('custom-spyware-signatures') end def custom_spyware_signatures=(val) prop_set('custom-spyware-signatures', val) end def custom_vulnerability_signatures prop_get('custom-vulnerability-signatures') end def custom_vulnerability_signatures=(val) prop_set('custom-vulnerability-signatures', val) end def custom_url_categories prop_get('custom-url-categories') end def custom_url_categories=(val) prop_set('custom-url-categories', val) end def antivirus_security_profiles prop_get('antivirus-security-profiles') end def antivirus_security_profiles=(val) prop_set('antivirus-security-profiles', val) end def anti_spyware_security_profiles prop_get('anti-spyware-security-profiles') end def anti_spyware_security_profiles=(val) prop_set('anti-spyware-security-profiles', val) end def vulnerability_protection_security_profiles prop_get('vulnerability-protection-security-profiles') end def vulnerability_protection_security_profiles=(val) prop_set('vulnerability-protection-security-profiles', val) end def url_filtering_security_profiles prop_get('url-filtering-security-profiles') end def url_filtering_security_profiles=(val) prop_set('url-filtering-security-profiles', val) end def file_blocking_security_profiles prop_get('file-blocking-security-profiles') end def file_blocking_security_profiles=(val) prop_set('file-blocking-security-profiles', val) end def wildfire_analysis_security_profiles prop_get('wildfire-analysis-security-profiles') end def wildfire_analysis_security_profiles=(val) prop_set('wildfire-analysis-security-profiles', val) end def data_filtering_security_profiles prop_get('data-filtering-security-profiles') end def data_filtering_security_profiles=(val) prop_set('data-filtering-security-profiles', val) end def dos_protection_security_profiles prop_get('dos-protection-security-profiles') end def dos_protection_security_profiles=(val) prop_set('dos-protection-security-profiles', val) end def gtp_protection_security_profiles prop_get('gtp-protection-security-profiles') end def gtp_protection_security_profiles=(val) prop_set('gtp-protection-security-profiles', val) end def sctp_protection_security_profiles prop_get('sctp-protection-security-profiles') end def sctp_protection_security_profiles=(val) prop_set('sctp-protection-security-profiles', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding_profiles prop_get('log-forwarding-profiles') end def log_forwarding_profiles=(val) prop_set('log-forwarding-profiles', val) end def authentication_enforcements prop_get('authentication-enforcements') end def authentication_enforcements=(val) prop_set('authentication-enforcements', val) end def decryption_profiles prop_get('decryption-profiles') end def decryption_profiles=(val) prop_set('decryption-profiles', val) end def decryption_forwarding_profiles prop_get('decryption-forwarding-profiles') end def decryption_forwarding_profiles=(val) prop_set('decryption-forwarding-profiles', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end def sdwan_path_quality_profiles prop_get('sdwan-path-quality-profiles') end def sdwan_path_quality_profiles=(val) prop_set('sdwan-path-quality-profiles', val) end def sdwan_saas_quality_profiles prop_get('sdwan-saas-quality-profiles') end def sdwan_saas_quality_profiles=(val) prop_set('sdwan-saas-quality-profiles', val) end def sdwan_traffic_distribution_profiles prop_get('sdwan-traffic-distribution-profiles') end def sdwan_traffic_distribution_profiles=(val) prop_set('sdwan-traffic-distribution-profiles', val) end def sdwan_error_correction_profiles prop_get('sdwan-error-correction-profiles') end def sdwan_error_correction_profiles=(val) prop_set('sdwan-error-correction-profiles', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"nat_rules", "menu-tree-path"=>"NAT Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "menu-tree-path"=>"QoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-based-forwarding-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspection-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "menu-tree-path"=>"DoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"sdwan-rules", "menu-tree-path"=>"SD-WAN Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def security_rules prop_get('security-rules') end def security_rules=(val) prop_set('security-rules', val) end def nat_rules prop_get('nat-rules') end def nat_rules=(val) prop_set('nat-rules', val) end def qos_rules prop_get('qos-rules') end def qos_rules=(val) prop_set('qos-rules', val) end def policy_based_forwarding_rules prop_get('policy-based-forwarding-rules') end def policy_based_forwarding_rules=(val) prop_set('policy-based-forwarding-rules', val) end def decryption_rules prop_get('decryption-rules') end def decryption_rules=(val) prop_set('decryption-rules', val) end def tunnel_inspection_rules prop_get('tunnel-inspection-rules') end def tunnel_inspection_rules=(val) prop_set('tunnel-inspection-rules', val) end def application_override_rules prop_get('application-override-rules') end def application_override_rules=(val) prop_set('application-override-rules', val) end def authentication_rules prop_get('authentication-rules') end def authentication_rules=(val) prop_set('authentication-rules', val) end def dos_rules prop_get('dos-rules') end def dos_rules=(val) prop_set('dos-rules', val) end def sdwan_rules prop_get('sdwan-rules') end def sdwan_rules=(val) prop_set('sdwan-rules', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end @props={"zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Portals", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Gateways", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-mdm-servers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect MDM Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless Apps", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless App Groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def globalprotect_portals prop_get('globalprotect-portals') end def globalprotect_portals=(val) prop_set('globalprotect-portals', val) end def globalprotect_gateways prop_get('globalprotect-gateways') end def globalprotect_gateways=(val) prop_set('globalprotect-gateways', val) end def globalprotect_mdm_servers prop_get('globalprotect-mdm-servers') end def globalprotect_mdm_servers=(val) prop_set('globalprotect-mdm-servers', val) end def globalprotect_clientless_apps prop_get('globalprotect-clientless-apps') end def globalprotect_clientless_apps=(val) prop_set('globalprotect-clientless-apps', val) end def globalprotect_clientless_app_groups prop_get('globalprotect-clientless-app-groups') end def globalprotect_clientless_app_groups=(val) prop_set('globalprotect-clientless-app-groups', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end @props={} end # class Restapi def restapi @subclasses['restapi'] ||= Restapi.new(parent_instance: self, create_children: @create_children) end @props={"cli"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"vsysadmin"}, {"value"=>"vsysreader"}]}} def cli prop_get('cli') end def cli=(val) prop_set('cli', val) end end # class Vsys__2 def vsys__2 @subclasses['vsys__2'] ||= Vsys__2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Role def role if @create_children @subclasses['role'] ||= Role.new(parent_instance: self, create_children: @create_children) else Role.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdminRole def admin_role if @create_children @subclasses['admin-role'] ||= AdminRole.new(parent_instance: self, create_children: @create_children) else AdminRole.new(parent_instance: self) end end class Scep < XML::ConfigClass def has_multiple_values? true end def _section :'scep' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScepChallenge < XML::ConfigClass def has_multiple_values? true end def _section :'scep-challenge' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"otp-server-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"URL to get the One-Time-Password", "uiHint-fieldLabel"=>"Server URL"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Username to authenticate to the SCEP server for procuring OTP"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Password to authenticate to the SCEP server for procuring OTP"}} # URL to get the One-Time-Password def otp_server_url prop_get('otp-server-url') end # URL to get the One-Time-Password def otp_server_url=(val) prop_set('otp-server-url', val) end # Username to authenticate to the SCEP server for procuring OTP def username prop_get('username') end # Username to authenticate to the SCEP server for procuring OTP def username=(val) prop_set('username', val) end # Password to authenticate to the SCEP server for procuring OTP def password prop_get('password') end # Password to authenticate to the SCEP server for procuring OTP def password=(val) prop_set('password', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"fixed"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "regex"=>"[^']*", "helpstring"=>"Challenge to use for SCEP server on mobile clients"}} def fixed prop_get('fixed') end def fixed=(val) prop_set('fixed', val) end end # class ScepChallenge def scep_challenge if @create_children @subclasses['scep-challenge'] ||= ScepChallenge.new(parent_instance: self, create_children: @create_children) else ScepChallenge.new(parent_instance: self) end end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Rsa < ConfigClass def has_multiple_values? false end def _section :'rsa' end @props={"rsa-nbits"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-nbits-complete-handler", "help-string"=>"Length of the key", "autocomplete"=>"yes"}} # Length of the key def rsa_nbits prop_get('rsa-nbits') end # Length of the key def rsa_nbits=(val) prop_set('rsa-nbits', val) end end # class Rsa def rsa @subclasses['rsa'] ||= Rsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end @props={"rfc822name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"rfc822Name"}, "dnsname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"dNSName"}, "uniform-resource-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"uniformResourceIdentifier"}} # rfc822Name def rfc822name prop_get('rfc822name') end # rfc822Name def rfc822name=(val) prop_set('rfc822name', val) end # dNSName def dnsname prop_get('dnsname') end # dNSName def dnsname=(val) prop_set('dnsname', val) end # uniformResourceIdentifier def uniform_resource_identifier prop_get('uniform-resource-identifier') end # uniformResourceIdentifier def uniform_resource_identifier=(val) prop_set('uniform-resource-identifier', val) end end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "scep-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"The base URL for the SCEP server"}, "scep-ca-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"SCEP Server CA Certificate", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry[not(csr)][ca='yes']/@name"]}, "scep-client-cert"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "optional"=>"yes", "help-string"=> "Client Certificate to use when connecting to SCEP Server over SSL", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name"]}, "ca-identity-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Name of the SCEP server CA Identity"}, "subject"=> {"node-type"=>"element", "regex"=>"(.*)CN=(.*?)(.*)", "type"=>"string", "default"=>"CN=$USERNAME", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"Representation of a X.500 name"}, "digest"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-digest-complete-handler", "help-string"=>"Digest Algorithm for CSR", "autocomplete"=>"yes"}, "fingerprint"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Hex String to use as a fingerprint"}, "use-as-digital-signature"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use as digital signature", "uiHint-fieldLabel"=>"Use as digital signature"}, "use-for-key-encipherment"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use for key encipherment", "uiHint-fieldLabel"=>"Use for key encipherment"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The base URL for the SCEP server def scep_url prop_get('scep-url') end # The base URL for the SCEP server def scep_url=(val) prop_set('scep-url', val) end # SCEP Server CA Certificate def scep_ca_cert prop_get('scep-ca-cert') end # SCEP Server CA Certificate def scep_ca_cert=(val) prop_set('scep-ca-cert', val) end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert prop_get('scep-client-cert') end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert=(val) prop_set('scep-client-cert', val) end # Name of the SCEP server CA Identity def ca_identity_name prop_get('ca-identity-name') end # Name of the SCEP server CA Identity def ca_identity_name=(val) prop_set('ca-identity-name', val) end # Representation of a X.500 name def subject prop_get('subject') end # Representation of a X.500 name def subject=(val) prop_set('subject', val) end # Digest Algorithm for CSR def digest prop_get('digest') end # Digest Algorithm for CSR def digest=(val) prop_set('digest', val) end # Hex String to use as a fingerprint def fingerprint prop_get('fingerprint') end # Hex String to use as a fingerprint def fingerprint=(val) prop_set('fingerprint', val) end # Use as digital signature def use_as_digital_signature prop_get('use-as-digital-signature') end # Use as digital signature def use_as_digital_signature=(val) prop_set('use-as-digital-signature', val) end # Use for key encipherment def use_for_key_encipherment prop_get('use-for-key-encipherment') end # Use for key encipherment def use_for_key_encipherment=(val) prop_set('use-for-key-encipherment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scep def scep if @create_children @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) else Scep.new(parent_instance: self) end end @props={"user-id-hub__17"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"configure user-id hub.", "subtype"=>"object-name", "optional"=>"yes", "prune-on"=>"single-vsys-mode", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/vsys/entry/@name"]}} # configure user-id hub. def user_id_hub__17 prop_get('user-id-hub__17') end # configure user-id hub. def user_id_hub__17=(val) prop_set('user-id-hub__17', val) end end # class Shared def shared @subclasses['shared'] ||= Shared.new(parent_instance: self, create_children: @create_children) end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Deviceconfig < ConfigClass def has_multiple_values? false end def _section :'deviceconfig' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={"send-hostname"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "send-client-id"=>{"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-hostname"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-domain"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}} def send_hostname prop_get('send-hostname') end def send_hostname=(val) prop_set('send-hostname', val) end def send_client_id prop_get('send-client-id') end def send_client_id=(val) prop_set('send-client-id', val) end def accept_dhcp_hostname prop_get('accept-dhcp-hostname') end def accept_dhcp_hostname=(val) prop_set('accept-dhcp-hostname', val) end def accept_dhcp_domain prop_get('accept-dhcp-domain') end def accept_dhcp_domain=(val) prop_set('accept-dhcp-domain', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Aux1 < ConfigClass def has_multiple_values? false end def _section :'aux-1' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-udp__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"fips-mode"}, "disable-http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_userid_syslog_listener_ssl prop_get('disable-userid-syslog-listener-ssl') end def disable_userid_syslog_listener_ssl=(val) prop_set('disable-userid-syslog-listener-ssl', val) end def disable_userid_syslog_listener_udp__9 prop_get('disable-userid-syslog-listener-udp__9') end def disable_userid_syslog_listener_udp__9=(val) prop_set('disable-userid-syslog-listener-udp__9', val) end def disable_http_ocsp prop_get('disable-http-ocsp') end def disable_http_ocsp=(val) prop_set('disable-http-ocsp', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip address/prefix/Variable Object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix/Variable Object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=>[{"value"=>"auto-negotiate"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IP address for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "help-string"=>"IP netmask for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 address for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 Default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}} # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end end # class Aux1 def aux_1 @subclasses['aux-1'] ||= Aux1.new(parent_instance: self, create_children: @create_children) end class Aux2 < ConfigClass def has_multiple_values? false end def _section :'aux-2' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-udp__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"fips-mode"}, "disable-http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_userid_syslog_listener_ssl prop_get('disable-userid-syslog-listener-ssl') end def disable_userid_syslog_listener_ssl=(val) prop_set('disable-userid-syslog-listener-ssl', val) end def disable_userid_syslog_listener_udp__9 prop_get('disable-userid-syslog-listener-udp__9') end def disable_userid_syslog_listener_udp__9=(val) prop_set('disable-userid-syslog-listener-udp__9', val) end def disable_http_ocsp prop_get('disable-http-ocsp') end def disable_http_ocsp=(val) prop_set('disable-http-ocsp', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip address/prefix/Variable Object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix/Variable Object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=>[{"value"=>"auto-negotiate"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IP address for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "help-string"=>"IP netmask for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 address for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 Default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}} # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end end # class Aux2 def aux_2 @subclasses['aux-2'] ||= Aux2.new(parent_instance: self, create_children: @create_children) end class DnsSetting < ConfigClass def has_multiple_values? false end def _section :'dns-setting' end class Servers < ConfigClass def has_multiple_values? false end def _section :'servers' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Primary DNS server IP address or Variable object", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS server IP address or Variable object", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Primary DNS server IP address or Variable object def primary prop_get('primary') end # Primary DNS server IP address or Variable object def primary=(val) prop_set('primary', val) end # Secondary DNS server IP address or Variable object def secondary prop_get('secondary') end # Secondary DNS server IP address or Variable object def secondary=(val) prop_set('secondary', val) end end # class Servers def servers @subclasses['servers'] ||= Servers.new(parent_instance: self, create_children: @create_children) end @props={"dns-proxy-object"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Dns proxy object to use for resolving fqdns", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/dns-proxy/entry/@name"]}} # Dns proxy object to use for resolving fqdns def dns_proxy_object prop_get('dns-proxy-object') end # Dns proxy object to use for resolving fqdns def dns_proxy_object=(val) prop_set('dns-proxy-object', val) end end # class DnsSetting def dns_setting @subclasses['dns-setting'] ||= DnsSetting.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end class CloudService < ConfigClass def has_multiple_values? false end def _section :'cloud-service' end @props={} end # class CloudService def cloud_service @subclasses['cloud-service'] ||= CloudService.new(parent_instance: self, create_children: @create_children) end class LocalPanorama < ConfigClass def has_multiple_values? false end def _section :'local-panorama' end @props={"panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server (IP address or FQDN or Variable object)", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server 2 (IP address or FQDN or Variable object)", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # Panorama server (IP address or FQDN or Variable object) def panorama_server prop_get('panorama-server') end # Panorama server (IP address or FQDN or Variable object) def panorama_server=(val) prop_set('panorama-server', val) end # Panorama server 2 (IP address or FQDN or Variable object) def panorama_server_2 prop_get('panorama-server-2') end # Panorama server 2 (IP address or FQDN or Variable object) def panorama_server_2=(val) prop_set('panorama-server-2', val) end end # class LocalPanorama def local_panorama @subclasses['local-panorama'] ||= LocalPanorama.new(parent_instance: self, create_children: @create_children) end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class NtpServers < ConfigClass def has_multiple_values? false end def _section :'ntp-servers' end class PrimaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'primary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class PrimaryNtpServer def primary_ntp_server @subclasses['primary-ntp-server'] ||= PrimaryNtpServer.new(parent_instance: self, create_children: @create_children) end class SecondaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'secondary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class SecondaryNtpServer def secondary_ntp_server @subclasses['secondary-ntp-server'] ||= SecondaryNtpServer.new(parent_instance: self, create_children: @create_children) end @props={} end # class NtpServers def ntp_servers @subclasses['ntp-servers'] ||= NtpServers.new(parent_instance: self, create_children: @create_children) end class HsmSettings < ConfigClass def has_multiple_values? false end def _section :'hsm-settings' end class Provider < ConfigClass def has_multiple_values? false end def _section :'provider' end class SafenetNetwork < ConfigClass def has_multiple_values? false end def _section :'safenet-network' end class HsmServer < XML::ConfigClass def has_multiple_values? true end def _section :'hsm-server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"hsm server name"}, "server-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"HSM server IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # hsm server name def name prop_get('@name') end # HSM server IP address def server_address prop_get('server-address') end # HSM server IP address def server_address=(val) prop_set('server-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HsmServer def hsm_server if @create_children @subclasses['hsm-server'] ||= HsmServer.new(parent_instance: self, create_children: @create_children) else HsmServer.new(parent_instance: self) end end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"auto-recovery-retry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"500", "default"=>"0", "help-string"=> "The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off."}, "ha-group-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"HA group name"}} # The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off. def auto_recovery_retry prop_get('auto-recovery-retry') end # The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off. def auto_recovery_retry=(val) prop_set('auto-recovery-retry', val) end # HA group name def ha_group_name prop_get('ha-group-name') end # HA group name def ha_group_name=(val) prop_set('ha-group-name', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end @props={} end # class SafenetNetwork def safenet_network @subclasses['safenet-network'] ||= SafenetNetwork.new(parent_instance: self, create_children: @create_children) end class NcipherNshieldConnect < ConfigClass def has_multiple_values? false end def _section :'ncipher-nshield-connect' end class HsmServer < XML::ConfigClass def has_multiple_values? true end def _section :'hsm-server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"hsm server name"}, "server-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"HSM server IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # hsm server name def name prop_get('@name') end # HSM server IP address def server_address prop_get('server-address') end # HSM server IP address def server_address=(val) prop_set('server-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HsmServer def hsm_server if @create_children @subclasses['hsm-server'] ||= HsmServer.new(parent_instance: self, create_children: @create_children) else HsmServer.new(parent_instance: self) end end @props={"rfs-address"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address of remote file system server"}} # IP address of remote file system server def rfs_address prop_get('rfs-address') end # IP address of remote file system server def rfs_address=(val) prop_set('rfs-address', val) end end # class NcipherNshieldConnect def ncipher_nshield_connect @subclasses['ncipher-nshield-connect'] ||= NcipherNshieldConnect.new(parent_instance: self, create_children: @create_children) end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end @props={} end # class Provider def provider @subclasses['provider'] ||= Provider.new(parent_instance: self, create_children: @create_children) end @props={} end # class HsmSettings def hsm_settings @subclasses['hsm-settings'] ||= HsmSettings.new(parent_instance: self, create_children: @create_children) end class Ssh < ConfigClass def has_multiple_values? false end def _section :'ssh' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HaProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ha-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HaProfiles def ha_profiles if @create_children @subclasses['ha-profiles'] ||= HaProfiles.new(parent_instance: self, create_children: @create_children) else HaProfiles.new(parent_instance: self) end end class MgmtProfiles < ConfigClass def has_multiple_values? false end def _section :'mgmt-profiles' end class ServerProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'server-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerProfiles def server_profiles if @create_children @subclasses['server-profiles'] ||= ServerProfiles.new(parent_instance: self, create_children: @create_children) else ServerProfiles.new(parent_instance: self) end end @props={} end # class MgmtProfiles def mgmt_profiles @subclasses['mgmt-profiles'] ||= MgmtProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"ha-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"HA profile to be used by HA SSH", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/ha-profiles/entry/@name"]}} # HA profile to be used by HA SSH def ha_profile prop_get('ha-profile') end # HA profile to be used by HA SSH def ha_profile=(val) prop_set('ha-profile', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end @props={"server-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Mgmt profile to be used by Mgmt SSH Server", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/mgmt-profiles/server-profiles/entry/@name"]}} # Mgmt profile to be used by Mgmt SSH Server def server_profile prop_get('server-profile') end # Mgmt profile to be used by Mgmt SSH Server def server_profile=(val) prop_set('server-profile', val) end end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end class RegenerateHostkeys < ConfigClass def has_multiple_values? false end def _section :'regenerate-hostkeys' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegenerateHostkeys def regenerate_hostkeys @subclasses['regenerate-hostkeys'] ||= RegenerateHostkeys.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ssh def ssh @subclasses['ssh'] ||= Ssh.new(parent_instance: self, create_children: @create_children) end class DeviceTelemetry < ConfigClass def has_multiple_values? false end def _section :'device-telemetry' end @props={"product-usage"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "device-health-performance"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "threat-prevention"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "region"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"region name to send telemetry data", "complete-handler"=>"device-telemetry-region-completer"}} def product_usage prop_get('product-usage') end def product_usage=(val) prop_set('product-usage', val) end def device_health_performance prop_get('device-health-performance') end def device_health_performance=(val) prop_set('device-health-performance', val) end def threat_prevention prop_get('threat-prevention') end def threat_prevention=(val) prop_set('threat-prevention', val) end # region name to send telemetry data def region prop_get('region') end # region name to send telemetry data def region=(val) prop_set('region', val) end end # class DeviceTelemetry def device_telemetry @subclasses['device-telemetry'] ||= DeviceTelemetry.new(parent_instance: self, create_children: @create_children) end class SnmpSetting < ConfigClass def has_multiple_values? false end def _section :'snmp-setting' end class SnmpSystem < ConfigClass def has_multiple_values? false end def _section :'snmp-system' end @props={"location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"256", "help-string"=>"System location"}, "contact"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"256", "type"=>"string", "help-string"=>"Contact information"}, "send-event-specific-traps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Use Event-specific Trap Definitions"}} # System location def location prop_get('location') end # System location def location=(val) prop_set('location', val) end # Contact information def contact prop_get('contact') end # Contact information def contact=(val) prop_set('contact', val) end # Use Event-specific Trap Definitions def send_event_specific_traps prop_get('send-event-specific-traps') end # Use Event-specific Trap Definitions def send_event_specific_traps=(val) prop_set('send-event-specific-traps', val) end end # class SnmpSystem def snmp_system @subclasses['snmp-system'] ||= SnmpSystem.new(parent_instance: self, create_children: @create_children) end class AccessSetting < ConfigClass def has_multiple_values? false end def _section :'access-setting' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end @props={"snmp-community-string"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"public", "maxlen"=>"255", "help-string"=>"SNMP Community String"}} # SNMP Community String def snmp_community_string prop_get('snmp-community-string') end # SNMP Community String def snmp_community_string=(val) prop_set('snmp-community-string', val) end end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Views < XML::ConfigClass def has_multiple_values? true end def _section :'views' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class View < XML::ConfigClass def has_multiple_values? true end def _section :'view' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Oid subtree name"}, "oid"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "regex"=>"^[0-9\\.]+$", "help-string"=>"Oid of a mib node"}, "option"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"include"}, {"value"=>"exclude"}]}, "mask"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "regex"=>"^0+[xX][0-9a-fA-F:.]+$", "help-string"=>"Subtree mask in hex"}} # Oid subtree name def name prop_get('@name') end # Oid of a mib node def oid prop_get('oid') end # Oid of a mib node def oid=(val) prop_set('oid', val) end def option prop_get('option') end def option=(val) prop_set('option', val) end # Subtree mask in hex def mask prop_get('mask') end # Subtree mask in hex def mask=(val) prop_set('mask', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class View def view if @create_children @subclasses['view'] ||= View.new(parent_instance: self, create_children: @create_children) else View.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[^ ]+$", "help-string"=>"View name"}} # View name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Views def views if @create_children @subclasses['views'] ||= Views.new(parent_instance: self, create_children: @create_children) else Views.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"User name"}, "view"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Snmp View Name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/snmp-setting/access-setting/version/v3/views/entry/@name"]}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes", "help-string"=>"Authentication Protocol Password"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes", "help-string"=>"Privacy Protocol Password"}} # User name def name prop_get('@name') end # Snmp View Name def view prop_get('view') end # Snmp View Name def view=(val) prop_set('view', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={} end # class AccessSetting def access_setting @subclasses['access-setting'] ||= AccessSetting.new(parent_instance: self, create_children: @create_children) end @props={} end # class SnmpSetting def snmp_setting @subclasses['snmp-setting'] ||= SnmpSetting.new(parent_instance: self, create_children: @create_children) end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^-?[0-9]+([.][0-9]+)?$", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^-?[0-9]+([.][0-9]+)?$", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-udp__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"fips-mode"}, "disable-http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_userid_syslog_listener_ssl prop_get('disable-userid-syslog-listener-ssl') end def disable_userid_syslog_listener_ssl=(val) prop_set('disable-userid-syslog-listener-ssl', val) end def disable_userid_syslog_listener_udp__9 prop_get('disable-userid-syslog-listener-udp__9') end def disable_userid_syslog_listener_udp__9=(val) prop_set('disable-userid-syslog-listener-udp__9', val) end def disable_http_ocsp prop_get('disable-http-ocsp') end def disable_http_ocsp=(val) prop_set('disable-http-ocsp', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip address/prefix/Variable Object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # ip address/prefix/Variable Object def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end class Route < ConfigClass def has_multiple_values? false end def _section :'route' end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )", "substring(string('management'), 1, 10*(('$dhcp-type'='') and (('$address'='') or ('$mgmtip'='$address'))) )", "substring(string('aux-1'), 1, 5*(not('$aux1ip'='') and (('$address'='') or ('$aux1ip'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip'='') and (('$address'='') or ('$aux2ip'='$address'))) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('management'), 1, 10*((('$address'='') or ('$mgmt6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('aux-1'), 1, 5*(not('$aux1ip6'='') and (('$address'='') or ('$aux1ip6'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip6'='') and (('$address'='') or ('$aux2ip6'='$address'))) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"Service name", "autocomplete"=>"yes", "memberof"=> ["string('edl-updates')", "string('paloalto-networks-services')", "string('url-updates')", "string('proxy')", "string('panorama')", "string('radius')", "string('ldap')", "string('kerberos')", "string('tacplus')", "string('syslog')", "string('email')", "string('http')", "string('snmp')", "string('dns')", "string('ntp')", "string('crl-status')", "string('uid-agent')", "string('autofocus')", "string('wildfire-private')", "string('vmmonitor')", "string('mdm')", "string('scep')", "string('deployments')", "string('mfa')", "string('data-services')", "string('iot')", "string('netflow')", "string('hsm')", "string('panorama-log-forwarding')", "string('ddns')", "string('ztp')"]}} # Service name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )", "substring(string('management'), 1, 10*(('$dhcp-type'='') and (('$address'='') or ('$mgmtip'='$address'))) )", "substring(string('aux-1'), 1, 5*(not('$aux1ip'='') and (('$address'='') or ('$aux1ip'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip'='') and (('$address'='') or ('$aux2ip'='$address'))) )", "#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address')) ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) ]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) ]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address')) ))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address')) ))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address')) ))", "substring(string('management'), 1, 10*((('$address'='') or ('$mgmt6'='$address')) ))", "substring(string('aux-1'), 1, 5*(not('$aux1ip6'='') and (('$address'='') or ('$aux1ip6'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip6'='') and (('$address'='') or ('$aux2ip6'='$address'))) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]", "#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"96", "help-string"=>"Destination IP/FQDN", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z.:/_-])+$", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # Destination IP/FQDN def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end @props={} end # class Route def route @subclasses['route'] ||= Route.new(parent_instance: self, create_children: @create_children) end class LogLink < XML::ConfigClass def has_multiple_values? true end def _section :'log-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"name of link", "regex"=>"[0-9a-zA-Z:@./_-]+"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"URL format of link", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024"}} # name of link def name prop_get('@name') end # URL format of link def url prop_get('url') end # URL format of link def url=(val) prop_set('url', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogLink def log_link if @create_children @subclasses['log-link'] ||= LogLink.new(parent_instance: self, create_children: @create_children) else LogLink.new(parent_instance: self) end end class LogExportSchedule < XML::ConfigClass def has_multiple_values? true end def _section :'log-export-schedule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Ftp__1 < ConfigClass def has_multiple_values? false end def _section :'ftp__1' end @props={"hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"ftp hostname", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"ftp port"}, "path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[\\.\\+/,\\{\\}0-9a-zA-Z_-]+$", "maxlen"=>"255", "help-string"=>"ftp server path"}, "username"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"ftp username", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"ftp password", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}, "passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable FTP Passive Mode"}} # ftp hostname def hostname prop_get('hostname') end # ftp hostname def hostname=(val) prop_set('hostname', val) end # ftp port def port prop_get('port') end # ftp port def port=(val) prop_set('port', val) end # ftp server path def path prop_get('path') end # ftp server path def path=(val) prop_set('path', val) end # ftp username def username prop_get('username') end # ftp username def username=(val) prop_set('username', val) end # ftp password def password prop_get('password') end # ftp password def password=(val) prop_set('password', val) end # Enable FTP Passive Mode def passive_mode prop_get('passive-mode') end # Enable FTP Passive Mode def passive_mode=(val) prop_set('passive-mode', val) end end # class Ftp__1 def ftp__1 @subclasses['ftp__1'] ||= Ftp__1.new(parent_instance: self, create_children: @create_children) end class Scp < ConfigClass def has_multiple_values? false end def _section :'scp' end @props={"hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"ftp hostname", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"scp port"}, "path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[\\.\\+/,\\{\\}0-9a-zA-Z_-]+$", "maxlen"=>"255", "help-string"=>"scp server path"}, "username"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"scp username", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"scp password", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # ftp hostname def hostname prop_get('hostname') end # ftp hostname def hostname=(val) prop_set('hostname', val) end # scp port def port prop_get('port') end # scp port def port=(val) prop_set('port', val) end # scp server path def path prop_get('path') end # scp server path def path=(val) prop_set('path', val) end # scp username def username prop_get('username') end # scp username def username=(val) prop_set('username', val) end # scp password def password prop_get('password') end # scp password def password=(val) prop_set('password', val) end end # class Scp def scp @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Schedule name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "log-type"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"traffic"}, {"value"=>"threat"}, {"value"=>"gtp"}, {"value"=>"sctp"}, {"value"=>"tunnel"}, {"value"=>"userid"}, {"value"=>"iptag"}, {"value"=>"auth"}, {"value"=>"url"}, {"value"=>"data"}, {"value"=>"hipmatch"}, {"value"=>"wildfire"}, {"value"=>"decryption"}, {"value"=>"globalprotect"}]}, "start-time"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time to start the scheduled export hh:mm (e.g. 03:30)"}} # Schedule name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def log_type prop_get('log-type') end def log_type=(val) prop_set('log-type', val) end # Time to start the scheduled export hh:mm (e.g. 03:30) def start_time prop_get('start-time') end # Time to start the scheduled export hh:mm (e.g. 03:30) def start_time=(val) prop_set('start-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogExportSchedule def log_export_schedule if @create_children @subclasses['log-export-schedule'] ||= LogExportSchedule.new(parent_instance: self, create_children: @create_children) else LogExportSchedule.new(parent_instance: self) end end class UpdateSchedule < ConfigClass def has_multiple_values? false end def _section :'update-schedule' end class StatisticsService < ConfigClass def has_multiple_values? false end def _section :'statistics-service' end @props={"application-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Application Reports"}, "threat-prevention-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Threat Reports"}, "threat-prevention-information"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Threat Prevention Information"}, "threat-prevention-pcap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable sending packet-captures with threat prevention information"}, "passive-dns-monitoring"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Passive DNS Monitor"}, "url-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"URL Reports"}, "health-performance-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Health and Performance Reports"}, "file-identification-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"File Type Identification Reports"}} # Application Reports def application_reports prop_get('application-reports') end # Application Reports def application_reports=(val) prop_set('application-reports', val) end # Threat Reports def threat_prevention_reports prop_get('threat-prevention-reports') end # Threat Reports def threat_prevention_reports=(val) prop_set('threat-prevention-reports', val) end # Threat Prevention Information def threat_prevention_information prop_get('threat-prevention-information') end # Threat Prevention Information def threat_prevention_information=(val) prop_set('threat-prevention-information', val) end # Enable sending packet-captures with threat prevention information def threat_prevention_pcap prop_get('threat-prevention-pcap') end # Enable sending packet-captures with threat prevention information def threat_prevention_pcap=(val) prop_set('threat-prevention-pcap', val) end # Passive DNS Monitor def passive_dns_monitoring prop_get('passive-dns-monitoring') end # Passive DNS Monitor def passive_dns_monitoring=(val) prop_set('passive-dns-monitoring', val) end # URL Reports def url_reports prop_get('url-reports') end # URL Reports def url_reports=(val) prop_set('url-reports', val) end # Health and Performance Reports def health_performance_reports prop_get('health-performance-reports') end # Health and Performance Reports def health_performance_reports=(val) prop_set('health-performance-reports', val) end # File Type Identification Reports def file_identification_reports prop_get('file-identification-reports') end # File Type Identification Reports def file_identification_reports=(val) prop_set('file-identification-reports', val) end end # class StatisticsService def statistics_service @subclasses['statistics-service'] ||= StatisticsService.new(parent_instance: self, create_children: @create_children) end class Threats < ConfigClass def has_multiple_values? false end def _section :'threats' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "new-app-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore new apps if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # ignore new apps if release date is new (hours) def new_app_threshold prop_get('new-app-threshold') end # ignore new apps if release date is new (hours) def new_app_threshold=(val) prop_set('new-app-threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Threats def threats @subclasses['threats'] ||= Threats.new(parent_instance: self, create_children: @create_children) end class AppProfile < ConfigClass def has_multiple_values? false end def _section :'app-profile' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AppProfile def app_profile @subclasses['app-profile'] ||= AppProfile.new(parent_instance: self, create_children: @create_children) end class AntiVirus < ConfigClass def has_multiple_values? false end def _section :'anti-virus' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AntiVirus def anti_virus @subclasses['anti-virus'] ||= AntiVirus.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RealTime < ConfigClass def has_multiple_values? false end def _section :'real-time' end @props={} end # class RealTime def real_time @subclasses['real-time'] ||= RealTime.new(parent_instance: self, create_children: @create_children) end class EveryMin < ConfigClass def has_multiple_values? false end def _section :'every-min' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class EveryMin def every_min @subclasses['every-min'] ||= EveryMin.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes past quarter-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes past quarter-hour def at prop_get('at') end # Minutes past quarter-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class WfPrivate < ConfigClass def has_multiple_values? false end def _section :'wf-private' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Every5Mins < ConfigClass def has_multiple_values? false end def _section :'every-5-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "help-string"=>"Minutes Past five minutes"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past five minutes def at prop_get('at') end # Minutes Past five minutes def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every5Mins def every_5_mins @subclasses['every-5-mins'] ||= Every5Mins.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes Past Quarter-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Quarter-Hour def at prop_get('at') end # Minutes Past Quarter-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes Past Half-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Half-Hour def at prop_get('at') end # Minutes Past Half-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes Past Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Hour def at prop_get('at') end # Minutes Past Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={"sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class WfPrivate def wf_private @subclasses['wf-private'] ||= WfPrivate.new(parent_instance: self, create_children: @create_children) end class GlobalProtectClientlessVpn < ConfigClass def has_multiple_values? false end def _section :'global-protect-clientless-vpn' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class GlobalProtectClientlessVpn def global_protect_clientless_vpn @subclasses['global-protect-clientless-vpn'] ||= GlobalProtectClientlessVpn.new(parent_instance: self, create_children: @create_children) end class GlobalProtectDatafile < ConfigClass def has_multiple_values? false end def _section :'global-protect-datafile' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class GlobalProtectDatafile def global_protect_datafile @subclasses['global-protect-datafile'] ||= GlobalProtectDatafile.new(parent_instance: self, create_children: @create_children) end @props={} end # class UpdateSchedule def update_schedule @subclasses['update-schedule'] ||= UpdateSchedule.new(parent_instance: self, create_children: @create_children) end class MotdAndBanner < ConfigClass def has_multiple_values? false end def _section :'motd-and-banner' end @props={"motd-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/disable message of the day"}, "message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Message of the day"}, "motd-do-not-display-again"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow do not display again"}, "motd-title"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"Message of the Day", "help-string"=>"Title for message of the day"}, "motd-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "severity"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Icon", "multi-types"=> {"enum"=> [{"value"=>"warning", "help-string"=>"Warning"}, {"value"=>"question", "help-string"=>"Help"}, {"value"=>"error", "help-string"=>"Error"}, {"value"=>"info", "help-string"=>"Information"}]}}, "banner-header"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Header banner text"}, "banner-header-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "banner-header-text-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color18"}]}, "banner-header-footer-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Same banner for header and footer"}, "banner-footer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Footer banner text"}, "banner-footer-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "banner-footer-text-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color18"}]}} # Enable/disable message of the day def motd_enable prop_get('motd-enable') end # Enable/disable message of the day def motd_enable=(val) prop_set('motd-enable', val) end # Message of the day def message prop_get('message') end # Message of the day def message=(val) prop_set('message', val) end # Allow do not display again def motd_do_not_display_again prop_get('motd-do-not-display-again') end # Allow do not display again def motd_do_not_display_again=(val) prop_set('motd-do-not-display-again', val) end # Title for message of the day def motd_title prop_get('motd-title') end # Title for message of the day def motd_title=(val) prop_set('motd-title', val) end def motd_color prop_get('motd-color') end def motd_color=(val) prop_set('motd-color', val) end # Icon def severity prop_get('severity') end # Icon def severity=(val) prop_set('severity', val) end # Header banner text def banner_header prop_get('banner-header') end # Header banner text def banner_header=(val) prop_set('banner-header', val) end def banner_header_color prop_get('banner-header-color') end def banner_header_color=(val) prop_set('banner-header-color', val) end def banner_header_text_color prop_get('banner-header-text-color') end def banner_header_text_color=(val) prop_set('banner-header-text-color', val) end # Same banner for header and footer def banner_header_footer_match prop_get('banner-header-footer-match') end # Same banner for header and footer def banner_header_footer_match=(val) prop_set('banner-header-footer-match', val) end # Footer banner text def banner_footer prop_get('banner-footer') end # Footer banner text def banner_footer=(val) prop_set('banner-footer', val) end def banner_footer_color prop_get('banner-footer-color') end def banner_footer_color=(val) prop_set('banner-footer-color', val) end def banner_footer_text_color prop_get('banner-footer-text-color') end def banner_footer_text_color=(val) prop_set('banner-footer-text-color', val) end end # class MotdAndBanner def motd_and_banner @subclasses['motd-and-banner'] ||= MotdAndBanner.new(parent_instance: self, create_children: @create_children) end @props={"login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200"}, "ack-login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Force Admins to Acknowledge Login Banner"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"256"}, "speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IP address for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "help-string"=>"IP netmask for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "unicast-only"=>"yes", "help-string"=>"Default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 Default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods are supported.", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[method/radius]/@name", "#config/shared/authentication-profile/entry[method/tacplus]/@name", "#config/shared/authentication-profile/entry[method/saml-idp]/@name", "#config/shared/authentication-sequence/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}, "syslog-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"client certificate for syslog", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["#config/shared/ssl-tls-service-profile/entry/@name"]}, "fqdn-refresh-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14399", "default"=>"30", "help-string"=>"Minimal seconds for periodic FQDN refresh"}, "fqdn-stale-entry-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10080", "default"=>"1440", "help-string"=>"Minutes for FQDN stale entry"}, "update-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"PaloAlto Networks update server"}, "server-verification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Verify update server identity"}, "secure-proxy-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z.:/_-])+$", "maxlen"=>"63", "help-string"=>"Secure Proxy server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "secure-proxy-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for secure proxy server"}, "secure-proxy-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Secure Proxy user name to use"}, "secure-proxy-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "help-string"=>"Secure Proxy password to use"}, "lcaas-use-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy access to CDL"}, "auto-renew-mkey-lifetime__31"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"17520", "default"=>"720", "prune-on"=>"fips-mode", "help-string"=> "Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime."}, "locale"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"system default locale", "default"=>"en", "complete-handler"=>"locale-name-completer", "autocomplete"=>"yes", "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"en", "help-string"=>"English"}, {"value"=>"es", "help-string"=>"Spanish"}, {"value"=>"ja", "help-string"=>"Japanese"}, {"value"=>"fr", "help-string"=>"French"}, {"value"=>"zh_CN", "help-string"=>"Chinese-Simplified"}, {"value"=>"zh_TW", "help-string"=>"Chinese-Traditional"}]}}, "domain-lookup-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"512"}, "ip-address-lookup-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"512"}, "timezone"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"Africa/Abidjan"}, {"value"=>"Africa/Accra"}, {"value"=>"Africa/Addis_Ababa"}, {"value"=>"Africa/Algiers"}, {"value"=>"Africa/Asmara"}, {"value"=>"Africa/Asmera"}, {"value"=>"Africa/Bamako"}, {"value"=>"Africa/Bangui"}, {"value"=>"Africa/Banjul"}, {"value"=>"Africa/Bissau"}, {"value"=>"Africa/Blantyre"}, {"value"=>"Africa/Brazzaville"}, {"value"=>"Africa/Bujumbura"}, {"value"=>"Africa/Cairo"}, {"value"=>"Africa/Casablanca"}, {"value"=>"Africa/Ceuta"}, {"value"=>"Africa/Conakry"}, {"value"=>"Africa/Dakar"}, {"value"=>"Africa/Dar_es_Salaam"}, {"value"=>"Africa/Djibouti"}, {"value"=>"Africa/Douala"}, {"value"=>"Africa/El_Aaiun"}, {"value"=>"Africa/Freetown"}, {"value"=>"Africa/Gaborone"}, {"value"=>"Africa/Harare"}, {"value"=>"Africa/Johannesburg"}, {"value"=>"Africa/Kampala"}, {"value"=>"Africa/Khartoum"}, {"value"=>"Africa/Kigali"}, {"value"=>"Africa/Kinshasa"}, {"value"=>"Africa/Lagos"}, {"value"=>"Africa/Libreville"}, {"value"=>"Africa/Lome"}, {"value"=>"Africa/Luanda"}, {"value"=>"Africa/Lubumbashi"}, {"value"=>"Africa/Lusaka"}, {"value"=>"Africa/Malabo"}, {"value"=>"Africa/Maputo"}, {"value"=>"Africa/Maseru"}, {"value"=>"Africa/Mbabane"}, {"value"=>"Africa/Mogadishu"}, {"value"=>"Africa/Monrovia"}, {"value"=>"Africa/Nairobi"}, {"value"=>"Africa/Ndjamena"}, {"value"=>"Africa/Niamey"}, {"value"=>"Africa/Nouakchott"}, {"value"=>"Africa/Ouagadougou"}, {"value"=>"Africa/Porto-Novo"}, {"value"=>"Africa/Sao_Tome"}, {"value"=>"Africa/Timbuktu"}, {"value"=>"Africa/Tripoli"}, {"value"=>"Africa/Tunis"}, {"value"=>"Africa/Windhoek"}, {"value"=>"America/Adak"}, {"value"=>"America/Anchorage"}, {"value"=>"America/Anguilla"}, {"value"=>"America/Antigua"}, {"value"=>"America/Araguaina"}, {"value"=>"America/Argentina/Buenos_Aires"}, {"value"=>"America/Argentina/Catamarca"}, {"value"=>"America/Argentina/ComodRivadavia"}, {"value"=>"America/Argentina/Cordoba"}, {"value"=>"America/Argentina/Jujuy"}, {"value"=>"America/Argentina/La_Rioja"}, {"value"=>"America/Argentina/Mendoza"}, {"value"=>"America/Argentina/Rio_Gallegos"}, {"value"=>"America/Argentina/Salta"}, {"value"=>"America/Argentina/San_Juan"}, {"value"=>"America/Argentina/San_Luis"}, {"value"=>"America/Argentina/Tucuman"}, {"value"=>"America/Argentina/Ushuaia"}, {"value"=>"America/Aruba"}, {"value"=>"America/Asuncion"}, {"value"=>"America/Atikokan"}, {"value"=>"America/Atka"}, {"value"=>"America/Bahia"}, {"value"=>"America/Barbados"}, {"value"=>"America/Belem"}, {"value"=>"America/Belize"}, {"value"=>"America/Blanc-Sablon"}, {"value"=>"America/Boa_Vista"}, {"value"=>"America/Bogota"}, {"value"=>"America/Boise"}, {"value"=>"America/Buenos_Aires"}, {"value"=>"America/Cambridge_Bay"}, {"value"=>"America/Campo_Grande"}, {"value"=>"America/Cancun"}, {"value"=>"America/Caracas"}, {"value"=>"America/Catamarca"}, {"value"=>"America/Cayenne"}, {"value"=>"America/Cayman"}, {"value"=>"America/Chicago"}, {"value"=>"America/Chihuahua"}, {"value"=>"America/Coral_Harbour"}, {"value"=>"America/Cordoba"}, {"value"=>"America/Costa_Rica"}, {"value"=>"America/Cuiaba"}, {"value"=>"America/Curacao"}, {"value"=>"America/Danmarkshavn"}, {"value"=>"America/Dawson"}, {"value"=>"America/Dawson_Creek"}, {"value"=>"America/Denver"}, {"value"=>"America/Detroit"}, {"value"=>"America/Dominica"}, {"value"=>"America/Edmonton"}, {"value"=>"America/Eirunepe"}, {"value"=>"America/El_Salvador"}, {"value"=>"America/Ensenada"}, {"value"=>"America/Fortaleza"}, {"value"=>"America/Fort_Wayne"}, {"value"=>"America/Glace_Bay"}, {"value"=>"America/Godthab"}, {"value"=>"America/Goose_Bay"}, {"value"=>"America/Grand_Turk"}, {"value"=>"America/Grenada"}, {"value"=>"America/Guadeloupe"}, {"value"=>"America/Guatemala"}, {"value"=>"America/Guayaquil"}, {"value"=>"America/Guyana"}, {"value"=>"America/Halifax"}, {"value"=>"America/Havana"}, {"value"=>"America/Hermosillo"}, {"value"=>"America/Indiana/Indianapolis"}, {"value"=>"America/Indiana/Knox"}, {"value"=>"America/Indiana/Marengo"}, {"value"=>"America/Indiana/Petersburg"}, {"value"=>"America/Indianapolis"}, {"value"=>"America/Indiana/Tell_City"}, {"value"=>"America/Indiana/Vevay"}, {"value"=>"America/Indiana/Vincennes"}, {"value"=>"America/Indiana/Winamac"}, {"value"=>"America/Inuvik"}, {"value"=>"America/Iqaluit"}, {"value"=>"America/Jamaica"}, {"value"=>"America/Jujuy"}, {"value"=>"America/Juneau"}, {"value"=>"America/Kentucky/Louisville"}, {"value"=>"America/Kentucky/Monticello"}, {"value"=>"America/Knox_IN"}, {"value"=>"America/La_Paz"}, {"value"=>"America/Lima"}, {"value"=>"America/Los_Angeles"}, {"value"=>"America/Louisville"}, {"value"=>"America/Maceio"}, {"value"=>"America/Managua"}, {"value"=>"America/Manaus"}, {"value"=>"America/Marigot"}, {"value"=>"America/Martinique"}, {"value"=>"America/Mazatlan"}, {"value"=>"America/Mendoza"}, {"value"=>"America/Menominee"}, {"value"=>"America/Merida"}, {"value"=>"America/Mexico_City"}, {"value"=>"America/Miquelon"}, {"value"=>"America/Moncton"}, {"value"=>"America/Monterrey"}, {"value"=>"America/Montevideo"}, {"value"=>"America/Montreal"}, {"value"=>"America/Montserrat"}, {"value"=>"America/Nassau"}, {"value"=>"America/New_York"}, {"value"=>"America/Nipigon"}, {"value"=>"America/Nome"}, {"value"=>"America/Noronha"}, {"value"=>"America/North_Dakota/Center"}, {"value"=>"America/North_Dakota/New_Salem"}, {"value"=>"America/Panama"}, {"value"=>"America/Pangnirtung"}, {"value"=>"America/Paramaribo"}, {"value"=>"America/Phoenix"}, {"value"=>"America/Port-au-Prince"}, {"value"=>"America/Porto_Acre"}, {"value"=>"America/Port_of_Spain"}, {"value"=>"America/Porto_Velho"}, {"value"=>"America/Puerto_Rico"}, {"value"=>"America/Rainy_River"}, {"value"=>"America/Rankin_Inlet"}, {"value"=>"America/Recife"}, {"value"=>"America/Regina"}, {"value"=>"America/Resolute"}, {"value"=>"America/Rio_Branco"}, {"value"=>"America/Rosario"}, {"value"=>"America/Santarem"}, {"value"=>"America/Santiago"}, {"value"=>"America/Santo_Domingo"}, {"value"=>"America/Sao_Paulo"}, {"value"=>"America/Scoresbysund"}, {"value"=>"America/Shiprock"}, {"value"=>"America/St_Barthelemy"}, {"value"=>"America/St_Johns"}, {"value"=>"America/St_Kitts"}, {"value"=>"America/St_Lucia"}, {"value"=>"America/St_Thomas"}, {"value"=>"America/St_Vincent"}, {"value"=>"America/Swift_Current"}, {"value"=>"America/Tegucigalpa"}, {"value"=>"America/Thule"}, {"value"=>"America/Thunder_Bay"}, {"value"=>"America/Tijuana"}, {"value"=>"America/Toronto"}, {"value"=>"America/Tortola"}, {"value"=>"America/Vancouver"}, {"value"=>"America/Virgin"}, {"value"=>"America/Whitehorse"}, {"value"=>"America/Winnipeg"}, {"value"=>"America/Yakutat"}, {"value"=>"America/Yellowknife"}, {"value"=>"Antarctica/Casey"}, {"value"=>"Antarctica/Davis"}, {"value"=>"Antarctica/DumontDUrville"}, {"value"=>"Antarctica/Mawson"}, {"value"=>"Antarctica/McMurdo"}, {"value"=>"Antarctica/Palmer"}, {"value"=>"Antarctica/Rothera"}, {"value"=>"Antarctica/South_Pole"}, {"value"=>"Antarctica/Syowa"}, {"value"=>"Antarctica/Vostok"}, {"value"=>"Arctic/Longyearbyen"}, {"value"=>"Asia/Aden"}, {"value"=>"Asia/Almaty"}, {"value"=>"Asia/Amman"}, {"value"=>"Asia/Anadyr"}, {"value"=>"Asia/Aqtau"}, {"value"=>"Asia/Aqtobe"}, {"value"=>"Asia/Ashgabat"}, {"value"=>"Asia/Ashkhabad"}, {"value"=>"Asia/Baghdad"}, {"value"=>"Asia/Bahrain"}, {"value"=>"Asia/Baku"}, {"value"=>"Asia/Bangkok"}, {"value"=>"Asia/Beirut"}, {"value"=>"Asia/Bishkek"}, {"value"=>"Asia/Brunei"}, {"value"=>"Asia/Calcutta"}, {"value"=>"Asia/Choibalsan"}, {"value"=>"Asia/Chongqing"}, {"value"=>"Asia/Chungking"}, {"value"=>"Asia/Colombo"}, {"value"=>"Asia/Dacca"}, {"value"=>"Asia/Damascus"}, {"value"=>"Asia/Dhaka"}, {"value"=>"Asia/Dili"}, {"value"=>"Asia/Dubai"}, {"value"=>"Asia/Dushanbe"}, {"value"=>"Asia/Gaza"}, {"value"=>"Asia/Harbin"}, {"value"=>"Asia/Ho_Chi_Minh"}, {"value"=>"Asia/Hong_Kong"}, {"value"=>"Asia/Hovd"}, {"value"=>"Asia/Irkutsk"}, {"value"=>"Asia/Istanbul"}, {"value"=>"Asia/Jakarta"}, {"value"=>"Asia/Jayapura"}, {"value"=>"Asia/Jerusalem"}, {"value"=>"Asia/Kabul"}, {"value"=>"Asia/Kamchatka"}, {"value"=>"Asia/Karachi"}, {"value"=>"Asia/Kashgar"}, {"value"=>"Asia/Kathmandu"}, {"value"=>"Asia/Katmandu"}, {"value"=>"Asia/Kolkata"}, {"value"=>"Asia/Krasnoyarsk"}, {"value"=>"Asia/Kuala_Lumpur"}, {"value"=>"Asia/Kuching"}, {"value"=>"Asia/Kuwait"}, {"value"=>"Asia/Macao"}, {"value"=>"Asia/Macau"}, {"value"=>"Asia/Magadan"}, {"value"=>"Asia/Makassar"}, {"value"=>"Asia/Manila"}, {"value"=>"Asia/Muscat"}, {"value"=>"Asia/Nicosia"}, {"value"=>"Asia/Novokuznetsk"}, {"value"=>"Asia/Novosibirsk"}, {"value"=>"Asia/Omsk"}, {"value"=>"Asia/Oral"}, {"value"=>"Asia/Phnom_Penh"}, {"value"=>"Asia/Pontianak"}, {"value"=>"Asia/Pyongyang"}, {"value"=>"Asia/Qatar"}, {"value"=>"Asia/Qyzylorda"}, {"value"=>"Asia/Rangoon"}, {"value"=>"Asia/Riyadh"}, {"value"=>"Asia/Riyadh87"}, {"value"=>"Asia/Riyadh88"}, {"value"=>"Asia/Riyadh89"}, {"value"=>"Asia/Saigon"}, {"value"=>"Asia/Sakhalin"}, {"value"=>"Asia/Samarkand"}, {"value"=>"Asia/Seoul"}, {"value"=>"Asia/Shanghai"}, {"value"=>"Asia/Singapore"}, {"value"=>"Asia/Taipei"}, {"value"=>"Asia/Tashkent"}, {"value"=>"Asia/Tbilisi"}, {"value"=>"Asia/Tehran"}, {"value"=>"Asia/Tel_Aviv"}, {"value"=>"Asia/Thimbu"}, {"value"=>"Asia/Thimphu"}, {"value"=>"Asia/Tokyo"}, {"value"=>"Asia/Ujung_Pandang"}, {"value"=>"Asia/Ulaanbaatar"}, {"value"=>"Asia/Ulan_Bator"}, {"value"=>"Asia/Urumqi"}, {"value"=>"Asia/Vientiane"}, {"value"=>"Asia/Vladivostok"}, {"value"=>"Asia/Yakutsk"}, {"value"=>"Asia/Yekaterinburg"}, {"value"=>"Asia/Yerevan"}, {"value"=>"Atlantic/Azores"}, {"value"=>"Atlantic/Bermuda"}, {"value"=>"Atlantic/Canary"}, {"value"=>"Atlantic/Cape_Verde"}, {"value"=>"Atlantic/Faeroe"}, {"value"=>"Atlantic/Faroe"}, {"value"=>"Atlantic/Jan_Mayen"}, {"value"=>"Atlantic/Madeira"}, {"value"=>"Atlantic/Reykjavik"}, {"value"=>"Atlantic/South_Georgia"}, {"value"=>"Atlantic/Stanley"}, {"value"=>"Atlantic/St_Helena"}, {"value"=>"Australia/ACT"}, {"value"=>"Australia/Adelaide"}, {"value"=>"Australia/Brisbane"}, {"value"=>"Australia/Broken_Hill"}, {"value"=>"Australia/Canberra"}, {"value"=>"Australia/Currie"}, {"value"=>"Australia/Darwin"}, {"value"=>"Australia/Eucla"}, {"value"=>"Australia/Hobart"}, {"value"=>"Australia/LHI"}, {"value"=>"Australia/Lindeman"}, {"value"=>"Australia/Lord_Howe"}, {"value"=>"Australia/Melbourne"}, {"value"=>"Australia/North"}, {"value"=>"Australia/NSW"}, {"value"=>"Australia/Perth"}, {"value"=>"Australia/Queensland"}, {"value"=>"Australia/South"}, {"value"=>"Australia/Sydney"}, {"value"=>"Australia/Tasmania"}, {"value"=>"Australia/Victoria"}, {"value"=>"Australia/West"}, {"value"=>"Australia/Yancowinna"}, {"value"=>"Brazil/Acre"}, {"value"=>"Brazil/DeNoronha"}, {"value"=>"Brazil/East"}, {"value"=>"Brazil/West"}, {"value"=>"Canada/Atlantic"}, {"value"=>"Canada/Central"}, {"value"=>"Canada/Eastern"}, {"value"=>"Canada/East-Saskatchewan"}, {"value"=>"Canada/Mountain"}, {"value"=>"Canada/Newfoundland"}, {"value"=>"Canada/Pacific"}, {"value"=>"Canada/Saskatchewan"}, {"value"=>"Canada/Yukon"}, {"value"=>"CET"}, {"value"=>"Chile/Continental"}, {"value"=>"Chile/EasterIsland"}, {"value"=>"CST6CDT"}, {"value"=>"Cuba"}, {"value"=>"EET"}, {"value"=>"Egypt"}, {"value"=>"Eire"}, {"value"=>"EST"}, {"value"=>"EST5EDT"}, {"value"=>"Etc/GMT"}, {"value"=>"Etc/GMT0"}, {"value"=>"Etc/GMT-0"}, {"value"=>"Etc/GMT+0"}, {"value"=>"Etc/GMT-1"}, {"value"=>"Etc/GMT+1"}, {"value"=>"Etc/GMT-10"}, {"value"=>"Etc/GMT+10"}, {"value"=>"Etc/GMT-11"}, {"value"=>"Etc/GMT+11"}, {"value"=>"Etc/GMT-12"}, {"value"=>"Etc/GMT+12"}, {"value"=>"Etc/GMT-13"}, {"value"=>"Etc/GMT-14"}, {"value"=>"Etc/GMT-2"}, {"value"=>"Etc/GMT+2"}, {"value"=>"Etc/GMT-3"}, {"value"=>"Etc/GMT+3"}, {"value"=>"Etc/GMT-4"}, {"value"=>"Etc/GMT+4"}, {"value"=>"Etc/GMT-5"}, {"value"=>"Etc/GMT+5"}, {"value"=>"Etc/GMT-6"}, {"value"=>"Etc/GMT+6"}, {"value"=>"Etc/GMT-7"}, {"value"=>"Etc/GMT+7"}, {"value"=>"Etc/GMT-8"}, {"value"=>"Etc/GMT+8"}, {"value"=>"Etc/GMT-9"}, {"value"=>"Etc/GMT+9"}, {"value"=>"Etc/Greenwich"}, {"value"=>"Etc/UCT"}, {"value"=>"Etc/Universal"}, {"value"=>"Etc/UTC"}, {"value"=>"Etc/Zulu"}, {"value"=>"Europe/Amsterdam"}, {"value"=>"Europe/Andorra"}, {"value"=>"Europe/Athens"}, {"value"=>"Europe/Belfast"}, {"value"=>"Europe/Belgrade"}, {"value"=>"Europe/Berlin"}, {"value"=>"Europe/Bratislava"}, {"value"=>"Europe/Brussels"}, {"value"=>"Europe/Bucharest"}, {"value"=>"Europe/Budapest"}, {"value"=>"Europe/Chisinau"}, {"value"=>"Europe/Copenhagen"}, {"value"=>"Europe/Dublin"}, {"value"=>"Europe/Gibraltar"}, {"value"=>"Europe/Guernsey"}, {"value"=>"Europe/Helsinki"}, {"value"=>"Europe/Isle_of_Man"}, {"value"=>"Europe/Istanbul"}, {"value"=>"Europe/Jersey"}, {"value"=>"Europe/Kaliningrad"}, {"value"=>"Europe/Kiev"}, {"value"=>"Europe/Lisbon"}, {"value"=>"Europe/Ljubljana"}, {"value"=>"Europe/London"}, {"value"=>"Europe/Luxembourg"}, {"value"=>"Europe/Madrid"}, {"value"=>"Europe/Malta"}, {"value"=>"Europe/Mariehamn"}, {"value"=>"Europe/Minsk"}, {"value"=>"Europe/Monaco"}, {"value"=>"Europe/Moscow"}, {"value"=>"Europe/Nicosia"}, {"value"=>"Europe/Oslo"}, {"value"=>"Europe/Paris"}, {"value"=>"Europe/Podgorica"}, {"value"=>"Europe/Prague"}, {"value"=>"Europe/Riga"}, {"value"=>"Europe/Rome"}, {"value"=>"Europe/Samara"}, {"value"=>"Europe/San_Marino"}, {"value"=>"Europe/Sarajevo"}, {"value"=>"Europe/Simferopol"}, {"value"=>"Europe/Skopje"}, {"value"=>"Europe/Sofia"}, {"value"=>"Europe/Stockholm"}, {"value"=>"Europe/Tallinn"}, {"value"=>"Europe/Tirane"}, {"value"=>"Europe/Tiraspol"}, {"value"=>"Europe/Uzhgorod"}, {"value"=>"Europe/Vaduz"}, {"value"=>"Europe/Vatican"}, {"value"=>"Europe/Vienna"}, {"value"=>"Europe/Vilnius"}, {"value"=>"Europe/Volgograd"}, {"value"=>"Europe/Warsaw"}, {"value"=>"Europe/Zagreb"}, {"value"=>"Europe/Zaporozhye"}, {"value"=>"Europe/Zurich"}, {"value"=>"Factory"}, {"value"=>"GB"}, {"value"=>"GB-Eire"}, {"value"=>"GMT"}, {"value"=>"GMT0"}, {"value"=>"GMT-0"}, {"value"=>"GMT+0"}, {"value"=>"Greenwich"}, {"value"=>"Hongkong"}, {"value"=>"HST"}, {"value"=>"Iceland"}, {"value"=>"Indian/Antananarivo"}, {"value"=>"Indian/Chagos"}, {"value"=>"Indian/Christmas"}, {"value"=>"Indian/Cocos"}, {"value"=>"Indian/Comoro"}, {"value"=>"Indian/Kerguelen"}, {"value"=>"Indian/Mahe"}, {"value"=>"Indian/Maldives"}, {"value"=>"Indian/Mauritius"}, {"value"=>"Indian/Mayotte"}, {"value"=>"Indian/Reunion"}, {"value"=>"Iran"}, {"value"=>"Israel"}, {"value"=>"Jamaica"}, {"value"=>"Japan"}, {"value"=>"Kwajalein"}, {"value"=>"Libya"}, {"value"=>"MET"}, {"value"=>"Mexico/BajaNorte"}, {"value"=>"Mexico/BajaSur"}, {"value"=>"Mexico/General"}, {"value"=>"Mideast/Riyadh87"}, {"value"=>"Mideast/Riyadh88"}, {"value"=>"Mideast/Riyadh89"}, {"value"=>"MST"}, {"value"=>"MST7MDT"}, {"value"=>"Navajo"}, {"value"=>"NZ"}, {"value"=>"NZ-CHAT"}, {"value"=>"Pacific/Apia"}, {"value"=>"Pacific/Auckland"}, {"value"=>"Pacific/Chatham"}, {"value"=>"Pacific/Easter"}, {"value"=>"Pacific/Efate"}, {"value"=>"Pacific/Enderbury"}, {"value"=>"Pacific/Fakaofo"}, {"value"=>"Pacific/Fiji"}, {"value"=>"Pacific/Funafuti"}, {"value"=>"Pacific/Galapagos"}, {"value"=>"Pacific/Gambier"}, {"value"=>"Pacific/Guadalcanal"}, {"value"=>"Pacific/Guam"}, {"value"=>"Pacific/Honolulu"}, {"value"=>"Pacific/Johnston"}, {"value"=>"Pacific/Kiritimati"}, {"value"=>"Pacific/Kosrae"}, {"value"=>"Pacific/Kwajalein"}, {"value"=>"Pacific/Majuro"}, {"value"=>"Pacific/Marquesas"}, {"value"=>"Pacific/Midway"}, {"value"=>"Pacific/Nauru"}, {"value"=>"Pacific/Niue"}, {"value"=>"Pacific/Norfolk"}, {"value"=>"Pacific/Noumea"}, {"value"=>"Pacific/Pago_Pago"}, {"value"=>"Pacific/Palau"}, {"value"=>"Pacific/Pitcairn"}, {"value"=>"Pacific/Ponape"}, {"value"=>"Pacific/Port_Moresby"}, {"value"=>"Pacific/Rarotonga"}, {"value"=>"Pacific/Saipan"}, {"value"=>"Pacific/Samoa"}, {"value"=>"Pacific/Tahiti"}, {"value"=>"Pacific/Tarawa"}, {"value"=>"Pacific/Tongatapu"}, {"value"=>"Pacific/Truk"}, {"value"=>"Pacific/Wake"}, {"value"=>"Pacific/Wallis"}, {"value"=>"Pacific/Yap"}, {"value"=>"Poland"}, {"value"=>"Portugal"}, {"value"=>"PRC"}, {"value"=>"PST8PDT"}, {"value"=>"ROC"}, {"value"=>"ROK"}, {"value"=>"Singapore"}, {"value"=>"Turkey"}, {"value"=>"UCT"}, {"value"=>"Universal"}, {"value"=>"US/Alaska"}, {"value"=>"US/Aleutian"}, {"value"=>"US/Arizona"}, {"value"=>"US/Central"}, {"value"=>"US/Eastern"}, {"value"=>"US/East-Indiana"}, {"value"=>"US/Hawaii"}, {"value"=>"US/Indiana-Starke"}, {"value"=>"US/Michigan"}, {"value"=>"US/Mountain"}, {"value"=>"US/Pacific"}, {"value"=>"US/Samoa"}, {"value"=>"UTC"}, {"value"=>"WET"}, {"value"=>"W-SU"}, {"value"=>"Zulu"}]}} def login_banner prop_get('login-banner') end def login_banner=(val) prop_set('login-banner', val) end # Force Admins to Acknowledge Login Banner def ack_login_banner prop_get('ack-login-banner') end # Force Admins to Acknowledge Login Banner def ack_login_banner=(val) prop_set('ack-login-banner', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def domain prop_get('domain') end def domain=(val) prop_set('domain', val) end # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods are supported. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods are supported. def authentication_profile=(val) prop_set('authentication-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # client certificate for syslog def syslog_certificate prop_get('syslog-certificate') end # client certificate for syslog def syslog_certificate=(val) prop_set('syslog-certificate', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Minimal seconds for periodic FQDN refresh def fqdn_refresh_time prop_get('fqdn-refresh-time') end # Minimal seconds for periodic FQDN refresh def fqdn_refresh_time=(val) prop_set('fqdn-refresh-time', val) end # Minutes for FQDN stale entry def fqdn_stale_entry_timeout prop_get('fqdn-stale-entry-timeout') end # Minutes for FQDN stale entry def fqdn_stale_entry_timeout=(val) prop_set('fqdn-stale-entry-timeout', val) end # PaloAlto Networks update server def update_server prop_get('update-server') end # PaloAlto Networks update server def update_server=(val) prop_set('update-server', val) end # Verify update server identity def server_verification prop_get('server-verification') end # Verify update server identity def server_verification=(val) prop_set('server-verification', val) end # Secure Proxy server to use def secure_proxy_server prop_get('secure-proxy-server') end # Secure Proxy server to use def secure_proxy_server=(val) prop_set('secure-proxy-server', val) end # Port for secure proxy server def secure_proxy_port prop_get('secure-proxy-port') end # Port for secure proxy server def secure_proxy_port=(val) prop_set('secure-proxy-port', val) end # Secure Proxy user name to use def secure_proxy_user prop_get('secure-proxy-user') end # Secure Proxy user name to use def secure_proxy_user=(val) prop_set('secure-proxy-user', val) end # Secure Proxy password to use def secure_proxy_password prop_get('secure-proxy-password') end # Secure Proxy password to use def secure_proxy_password=(val) prop_set('secure-proxy-password', val) end # Enable proxy access to CDL def lcaas_use_proxy prop_get('lcaas-use-proxy') end # Enable proxy access to CDL def lcaas_use_proxy=(val) prop_set('lcaas-use-proxy', val) end # Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime. def auto_renew_mkey_lifetime__31 prop_get('auto-renew-mkey-lifetime__31') end # Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime. def auto_renew_mkey_lifetime__31=(val) prop_set('auto-renew-mkey-lifetime__31', val) end # system default locale def locale prop_get('locale') end # system default locale def locale=(val) prop_set('locale', val) end def domain_lookup_url prop_get('domain-lookup-url') end def domain_lookup_url=(val) prop_set('domain-lookup-url', val) end def ip_address_lookup_url prop_get('ip-address-lookup-url') end def ip_address_lookup_url=(val) prop_set('ip-address-lookup-url', val) end def timezone prop_get('timezone') end def timezone=(val) prop_set('timezone', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end @props={"reserve-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"reserve translated IP for specified time"}, "reserve-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "default"=>"120", "help-string"=>"reserve time value in seconds"}, "dipp-oversub"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"DIPP oversubscription ratio", "enum"=> [{"value"=>"1x", "help-string"=>"No oversubscription"}, {"value"=>"2x", "help-string"=>"2 times oversubscription"}, {"value"=>"4x", "help-string"=>"4 times oversubscription"}, {"value"=>"8x", "help-string"=>"8 times oversubscription"}]}} # reserve translated IP for specified time def reserve_ip prop_get('reserve-ip') end # reserve translated IP for specified time def reserve_ip=(val) prop_set('reserve-ip', val) end # reserve time value in seconds def reserve_time prop_get('reserve-time') end # reserve time value in seconds def reserve_time=(val) prop_set('reserve-time', val) end # DIPP oversubscription ratio def dipp_oversub prop_get('dipp-oversub') end # DIPP oversubscription ratio def dipp_oversub=(val) prop_set('dipp-oversub', val) end end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class JumboFrame < ConfigClass def has_multiple_values? false end def _section :'jumbo-frame' end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"9192", "min"=>"512", "max"=>"9216", "help-string"=>"device MTU excluding Ethernet header"}} # device MTU excluding Ethernet header def mtu prop_get('mtu') end # device MTU excluding Ethernet header def mtu=(val) prop_set('mtu', val) end end # class JumboFrame def jumbo_frame @subclasses['jumbo-frame'] ||= JumboFrame.new(parent_instance: self, create_children: @create_children) end class Icmpv6RateLimit < ConfigClass def has_multiple_values? false end def _section :'icmpv6-rate-limit' end @props={"bucket-size"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"100", "min"=>"10", "max"=>"65535", "help-string"=>"token-bucket size for ICMPv6 error rate limiting"}, "packet-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"100", "min"=>"1", "max"=>"65535", "help-string"=>"ICMPv6 error packet limit per second"}} # token-bucket size for ICMPv6 error rate limiting def bucket_size prop_get('bucket-size') end # token-bucket size for ICMPv6 error rate limiting def bucket_size=(val) prop_set('bucket-size', val) end # ICMPv6 error packet limit per second def packet_rate prop_get('packet-rate') end # ICMPv6 error packet limit per second def packet_rate=(val) prop_set('packet-rate', val) end end # class Icmpv6RateLimit def icmpv6_rate_limit @subclasses['icmpv6-rate-limit'] ||= Icmpv6RateLimit.new(parent_instance: self, create_children: @create_children) end class Nat64 < ConfigClass def has_multiple_values? false end def _section :'nat64' end @props={"ipv6-min-network-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1280", "max"=>"9216", "default"=>"1280", "help-string"=>"NAT64 minimum IPv6 MTU in the network"}} # NAT64 minimum IPv6 MTU in the network def ipv6_min_network_mtu prop_get('ipv6-min-network-mtu') end # NAT64 minimum IPv6 MTU in the network def ipv6_min_network_mtu=(val) prop_set('ipv6-min-network-mtu', val) end end # class Nat64 def nat64 @subclasses['nat64'] ||= Nat64.new(parent_instance: self, create_children: @create_children) end class Packet < ConfigClass def has_multiple_values? false end def _section :'packet' end @props={"ip-frag-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable ip frag packet limit"}} # enable/disable ip frag packet limit def ip_frag_limit prop_get('ip-frag-limit') end # enable/disable ip frag packet limit def ip_frag_limit=(val) prop_set('ip-frag-limit', val) end end # class Packet def packet @subclasses['packet'] ||= Packet.new(parent_instance: self, create_children: @create_children) end class Util < ConfigClass def has_multiple_values? false end def _section :'util' end @props={"assert-crash-once"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable assert crash only one"}} # enable/disable assert crash only one def assert_crash_once prop_get('assert-crash-once') end # enable/disable assert crash only one def assert_crash_once=(val) prop_set('assert-crash-once', val) end end # class Util def util @subclasses['util'] ||= Util.new(parent_instance: self, create_children: @create_children) end class PanUrlDb < ConfigClass def has_multiple_values? false end def _section :'pan-url-db' end @props={"cloud-static-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1023", "help-string"=>"Cloud list separated by commas"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"300", "min"=>"1", "max"=>"300", "help-string"=>"Timeout for request to cloud"}} # Cloud list separated by commas def cloud_static_list prop_get('cloud-static-list') end # Cloud list separated by commas def cloud_static_list=(val) prop_set('cloud-static-list', val) end # Timeout for request to cloud def timeout prop_get('timeout') end # Timeout for request to cloud def timeout=(val) prop_set('timeout', val) end end # class PanUrlDb def pan_url_db @subclasses['pan-url-db'] ||= PanUrlDb.new(parent_instance: self, create_children: @create_children) end class Hawkeye < ConfigClass def has_multiple_values? false end def _section :'hawkeye' end @props={"public-cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([$a-zA-Z0-9./_-])+$", "default"=>"hawkeye.services-edge.paloaltonetworks.com", "loose-membership"=>"yes", "maxlen"=>"1023", "help-string"=> "Hawkeye FQDN/Server. Default hawkeye.services-edge.paloaltonetworks.com", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # Hawkeye FQDN/Server. Default hawkeye.services-edge.paloaltonetworks.com def public_cloud_server prop_get('public-cloud-server') end # Hawkeye FQDN/Server. Default hawkeye.services-edge.paloaltonetworks.com def public_cloud_server=(val) prop_set('public-cloud-server', val) end end # class Hawkeye def hawkeye @subclasses['hawkeye'] ||= Hawkeye.new(parent_instance: self, create_children: @create_children) end class GlobalProtect < ConfigClass def has_multiple_values? false end def _section :'global-protect' end @props={"timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"3", "max"=>"150", "help-string"=>"timeout in seconds for global-protect gateways"}, "keepalive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"3", "max"=>"150", "help-string"=>"keepalive in seconds for global-protect gateways"}, "enable-external-gateway-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable external gateway priority by source location for best gateway selection"}, "location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"100", "help-string"=>"location for portal/gateway with max length 100"}} # timeout in seconds for global-protect gateways def timeout prop_get('timeout') end # timeout in seconds for global-protect gateways def timeout=(val) prop_set('timeout', val) end # keepalive in seconds for global-protect gateways def keepalive prop_get('keepalive') end # keepalive in seconds for global-protect gateways def keepalive=(val) prop_set('keepalive', val) end # enable external gateway priority by source location for best gateway selection def enable_external_gateway_priority prop_get('enable-external-gateway-priority') end # enable external gateway priority by source location for best gateway selection def enable_external_gateway_priority=(val) prop_set('enable-external-gateway-priority', val) end # location for portal/gateway with max length 100 def location prop_get('location') end # location for portal/gateway with max length 100 def location=(val) prop_set('location', val) end end # class GlobalProtect def global_protect @subclasses['global-protect'] ||= GlobalProtect.new(parent_instance: self, create_children: @create_children) end class L3Service < ConfigClass def has_multiple_values? false end def _section :'l3-service' end @props={"timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"3", "max"=>"125", "help-string"=>"timeout in seconds for l3 services"}} # timeout in seconds for l3 services def timeout prop_get('timeout') end # timeout in seconds for l3 services def timeout=(val) prop_set('timeout', val) end end # class L3Service def l3_service @subclasses['l3-service'] ||= L3Service.new(parent_instance: self, create_children: @create_children) end class CaptivePortal < ConfigClass def has_multiple_values? false end def _section :'captive-portal' end @props={"number-workers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"2", "max"=>"12", "help-string"=>"number of captive-portal workers"}, "disable-token"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable token caculation when do captive-portal"}} # number of captive-portal workers def number_workers prop_get('number-workers') end # number of captive-portal workers def number_workers=(val) prop_set('number-workers', val) end # disable token caculation when do captive-portal def disable_token prop_get('disable-token') end # disable token caculation when do captive-portal def disable_token=(val) prop_set('disable-token', val) end end # class CaptivePortal def captive_portal @subclasses['captive-portal'] ||= CaptivePortal.new(parent_instance: self, create_children: @create_children) end class Application < ConfigClass def has_multiple_values? false end def _section :'application' end class Traceroute < ConfigClass def has_multiple_values? false end def _section :'traceroute' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable application identification for traceroute"}, "ttl-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"30", "help-string"=>"set the TTL threshold value for traceroute identification"}} # enable/disable application identification for traceroute def enable prop_get('enable') end # enable/disable application identification for traceroute def enable=(val) prop_set('enable', val) end # set the TTL threshold value for traceroute identification def ttl_threshold prop_get('ttl-threshold') end # set the TTL threshold value for traceroute identification def ttl_threshold=(val) prop_set('ttl-threshold', val) end end # class Traceroute def traceroute @subclasses['traceroute'] ||= Traceroute.new(parent_instance: self, create_children: @create_children) end @props={"identify-unknown-traffic-by-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "set if unknown traffic should be identified by source or destination port"}, "dump-unknown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"on", "help-string"=>"set if unknown application capture should be enabled", "enum"=> [{"value"=>"on", "help-string"=>"Turn on unknown application dump"}, {"value"=>"off", "help-string"=>"Turn off unknown application dump"}]}, "cache"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if application cache should be enabled"}, "use-cache-for-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to use the App-ID cache result for identification"}, "cache-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"16", "min"=>"1", "max"=>"65535", "help-string"=>"set application cache threshold"}, "supernode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if supernode detection should be enabled"}, "heuristics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if heuristics detection should be enabled"}, "notify-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "set if user should be notified when web-application is blocked"}, "bypass-exceed-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to skip inspection of session if queue limit is exceeded"}} # set if unknown traffic should be identified by source or destination port def identify_unknown_traffic_by_port prop_get('identify-unknown-traffic-by-port') end # set if unknown traffic should be identified by source or destination port def identify_unknown_traffic_by_port=(val) prop_set('identify-unknown-traffic-by-port', val) end # set if unknown application capture should be enabled def dump_unknown prop_get('dump-unknown') end # set if unknown application capture should be enabled def dump_unknown=(val) prop_set('dump-unknown', val) end # set if application cache should be enabled def cache prop_get('cache') end # set if application cache should be enabled def cache=(val) prop_set('cache', val) end # Set to use the App-ID cache result for identification def use_cache_for_identification prop_get('use-cache-for-identification') end # Set to use the App-ID cache result for identification def use_cache_for_identification=(val) prop_set('use-cache-for-identification', val) end # set application cache threshold def cache_threshold prop_get('cache-threshold') end # set application cache threshold def cache_threshold=(val) prop_set('cache-threshold', val) end # set if supernode detection should be enabled def supernode prop_get('supernode') end # set if supernode detection should be enabled def supernode=(val) prop_set('supernode', val) end # set if heuristics detection should be enabled def heuristics prop_get('heuristics') end # set if heuristics detection should be enabled def heuristics=(val) prop_set('heuristics', val) end # set if user should be notified when web-application is blocked def notify_user prop_get('notify-user') end # set if user should be notified when web-application is blocked def notify_user=(val) prop_set('notify-user', val) end # whether to skip inspection of session if queue limit is exceeded def bypass_exceed_queue prop_get('bypass-exceed-queue') end # whether to skip inspection of session if queue limit is exceeded def bypass_exceed_queue=(val) prop_set('bypass-exceed-queue', val) end end # class Application def application @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) end class Autofocus < ConfigClass def has_multiple_values? false end def _section :'autofocus' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable AutoFocus service"}, "autofocus-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1024", "default"=>"https://autofocus.paloaltonetworks.com:10443", "help-string"=>"URL for AutoFocus server"}, "query-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"15", "max"=>"3600", "default"=>"15", "help-string"=>"Query time out in seconds"}} # Enable AutoFocus service def enabled prop_get('enabled') end # Enable AutoFocus service def enabled=(val) prop_set('enabled', val) end # URL for AutoFocus server def autofocus_url prop_get('autofocus-url') end # URL for AutoFocus server def autofocus_url=(val) prop_set('autofocus-url', val) end # Query time out in seconds def query_timeout prop_get('query-timeout') end # Query time out in seconds def query_timeout=(val) prop_set('query-timeout', val) end end # class Autofocus def autofocus @subclasses['autofocus'] ||= Autofocus.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class FileSizeLimit < XML::ConfigClass def has_multiple_values? true end def _section :'file-size-limit' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"file type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/tdb/wf-file-class/entry/@name[(. !='pdns') and (. !='email-link')]"]}, "size-limit"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"file size limit", "complete-handler"=>"wf-file-size-limit-completer"}} # file type def name prop_get('@name') end # file size limit def size_limit prop_get('size-limit') end # file size limit def size_limit=(val) prop_set('size-limit', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class FileSizeLimit def file_size_limit if @create_children @subclasses['file-size-limit'] ||= FileSizeLimit.new(parent_instance: self, create_children: @create_children) else FileSizeLimit.new(parent_instance: self) end end class SessionInfoSelect < ConfigClass def has_multiple_values? false end def _section :'session-info-select' end @props={"exclude-src-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude source IP address"}, "exclude-src-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude source port"}, "exclude-dest-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude destination IP address"}, "exclude-dest-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude destination port"}, "exclude-vsys-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude vsys id"}, "exclude-app-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude application name"}, "exclude-username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude user name"}, "exclude-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude url"}, "exclude-filename"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude file name"}, "exclude-email-sender"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude email sender"}, "exclude-email-recipient"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude email recipient"}, "exclude-email-subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude email subject"}} # exclude source IP address def exclude_src_ip prop_get('exclude-src-ip') end # exclude source IP address def exclude_src_ip=(val) prop_set('exclude-src-ip', val) end # exclude source port def exclude_src_port prop_get('exclude-src-port') end # exclude source port def exclude_src_port=(val) prop_set('exclude-src-port', val) end # exclude destination IP address def exclude_dest_ip prop_get('exclude-dest-ip') end # exclude destination IP address def exclude_dest_ip=(val) prop_set('exclude-dest-ip', val) end # exclude destination port def exclude_dest_port prop_get('exclude-dest-port') end # exclude destination port def exclude_dest_port=(val) prop_set('exclude-dest-port', val) end # exclude vsys id def exclude_vsys_id prop_get('exclude-vsys-id') end # exclude vsys id def exclude_vsys_id=(val) prop_set('exclude-vsys-id', val) end # exclude application name def exclude_app_name prop_get('exclude-app-name') end # exclude application name def exclude_app_name=(val) prop_set('exclude-app-name', val) end # exclude user name def exclude_username prop_get('exclude-username') end # exclude user name def exclude_username=(val) prop_set('exclude-username', val) end # exclude url def exclude_url prop_get('exclude-url') end # exclude url def exclude_url=(val) prop_set('exclude-url', val) end # exclude file name def exclude_filename prop_get('exclude-filename') end # exclude file name def exclude_filename=(val) prop_set('exclude-filename', val) end # exclude email sender def exclude_email_sender prop_get('exclude-email-sender') end # exclude email sender def exclude_email_sender=(val) prop_set('exclude-email-sender', val) end # exclude email recipient def exclude_email_recipient prop_get('exclude-email-recipient') end # exclude email recipient def exclude_email_recipient=(val) prop_set('exclude-email-recipient', val) end # exclude email subject def exclude_email_subject prop_get('exclude-email-subject') end # exclude email subject def exclude_email_subject=(val) prop_set('exclude-email-subject', val) end end # class SessionInfoSelect def session_info_select @subclasses['session-info-select'] ||= SessionInfoSelect.new(parent_instance: self, create_children: @create_children) end @props={"file-idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"90", "min"=>"5", "max"=>"180", "help-string"=>"set file caching idle timeout (second)"}, "file-upload-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"150", "platform-max"=>"cfg.general.fb.max-fbfiles-per-min", "help-string"=>"set max number of files uploaded per minute"}, "public-cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([$a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "default"=>"wildfire.paloaltonetworks.com", "loose-membership"=>"yes", "help-string"=> "IP address or hostname for cloud server. Default is wildfire.paloaltonetworks.com", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "private-cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([:/$a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or hostname for private cloud server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "private-cloud-use-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Use global proxy, when configured, to connect to private cloud server."}, "disable-signature-verify"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable file signature verification"}, "report-benign-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"collect reports from cloud for benign files"}, "report-grayware-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"collect reports from cloud for grayware files"}} # set file caching idle timeout (second) def file_idle_timeout prop_get('file-idle-timeout') end # set file caching idle timeout (second) def file_idle_timeout=(val) prop_set('file-idle-timeout', val) end # set max number of files uploaded per minute def file_upload_rate prop_get('file-upload-rate') end # set max number of files uploaded per minute def file_upload_rate=(val) prop_set('file-upload-rate', val) end # IP address or hostname for cloud server. Default is wildfire.paloaltonetworks.com def public_cloud_server prop_get('public-cloud-server') end # IP address or hostname for cloud server. Default is wildfire.paloaltonetworks.com def public_cloud_server=(val) prop_set('public-cloud-server', val) end # IP address or hostname for private cloud server def private_cloud_server prop_get('private-cloud-server') end # IP address or hostname for private cloud server def private_cloud_server=(val) prop_set('private-cloud-server', val) end # Use global proxy, when configured, to connect to private cloud server. def private_cloud_use_proxy prop_get('private-cloud-use-proxy') end # Use global proxy, when configured, to connect to private cloud server. def private_cloud_use_proxy=(val) prop_set('private-cloud-use-proxy', val) end # disable file signature verification def disable_signature_verify prop_get('disable-signature-verify') end # disable file signature verification def disable_signature_verify=(val) prop_set('disable-signature-verify', val) end # collect reports from cloud for benign files def report_benign_file prop_get('report-benign-file') end # collect reports from cloud for benign files def report_benign_file=(val) prop_set('report-benign-file', val) end # collect reports from cloud for grayware files def report_grayware_file prop_get('report-grayware-file') end # collect reports from cloud for grayware files def report_grayware_file=(val) prop_set('report-grayware-file', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Ctd < ConfigClass def has_multiple_values? false end def _section :'ctd' end @props={"x-forwarded-for"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"0", "help-string"=>"Select parsing mode for x-forwarded-for attribute", "enum"=> [{"value"=>"0", "help-string"=>"Disabled"}, {"value"=>"1", "help-string"=>"Enabled for User-ID"}, {"value"=>"2", "help-string"=>"Enabled for Security Policy"}]}, "strip-x-fwd-for"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to strip x-forwarded-for in http header"}, "url-coach-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"1", "max"=>"86400", "help-string"=>"set url coach continue timeout(minutes)"}, "url-admin-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"1", "max"=>"86400", "help-string"=>"set url admin continue timeout(minutes)"}, "url-lockout-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"86400", "help-string"=>"set url admin override lockout timeout(minutes)"}, "url-wait-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"1", "max"=>"60", "help-string"=>"set url category query timeout(seconds)"}, "cap-portal-ask-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"0", "max"=>"65535", "help-string"=>"set captive portal rate limit timeout(seconds)"}, "cap-portal-ask-requests"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"32", "help-string"=>"set captive portal rate limit max request count"}, "cap-portal-max-session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2500", "min"=>"0", "max"=>"8192", "help-string"=>"set maximum captive portal sessions"}, "cap-portal-html-redirect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to redirect with html meta header"}, "http-proxy-use-transaction"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to use transaction for stats for http proxy sessions"}, "tcp-bypass-exceed-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to skip inspection of TCP session if queue limit is exceeded"}, "udp-bypass-exceed-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to skip inspection of UDP session if queue limit is exceeded"}, "allow-http-range"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to allow HTTP partial response"}, "extended-capture-segment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"50", "help-string"=>"number of segment of threat packet capture."}, "track-filename"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"keep on tracking filenames without considering profile"}, "hash-signature-allow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to do hashing for virus signatures"}, "decode-filter-max-depth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"4", "min"=>"1", "max"=>"4", "help-string"=>"set number of levels for decode filter"}, "hold-client-request"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to hold client request for URL category lookup"}, "header-insert-cleartext-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use cleartext proxy for HTTP header insertion"}, "block-on-cleartext-proxy-failure"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Block session when cleartext proxy fails to start"}, "cloud-dns-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"100", "min"=>"0", "max"=>"60000", "help-string"=>"set cloud DNS signature query timeout in milliseconds"}, "cloud-dns-privacy-mask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set cloud DNS telemetry mask source ip address"}, "siptcp-cleartext-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"1", "help-string"=>"Select Cleartext proxy mode for SIP TCP", "enum"=> [{"value"=>"0", "help-string"=>"Always Off"}, {"value"=>"1", "help-string"=>"Always enabled"}, {"value"=>"2", "help-string"=>"Automatically enable proxy when needed"}]}, "http2-cleartext-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to enable/disable cleartext proxy for HTTP/2"}} # Select parsing mode for x-forwarded-for attribute def x_forwarded_for prop_get('x-forwarded-for') end # Select parsing mode for x-forwarded-for attribute def x_forwarded_for=(val) prop_set('x-forwarded-for', val) end # whether to strip x-forwarded-for in http header def strip_x_fwd_for prop_get('strip-x-fwd-for') end # whether to strip x-forwarded-for in http header def strip_x_fwd_for=(val) prop_set('strip-x-fwd-for', val) end # set url coach continue timeout(minutes) def url_coach_timeout prop_get('url-coach-timeout') end # set url coach continue timeout(minutes) def url_coach_timeout=(val) prop_set('url-coach-timeout', val) end # set url admin continue timeout(minutes) def url_admin_timeout prop_get('url-admin-timeout') end # set url admin continue timeout(minutes) def url_admin_timeout=(val) prop_set('url-admin-timeout', val) end # set url admin override lockout timeout(minutes) def url_lockout_timeout prop_get('url-lockout-timeout') end # set url admin override lockout timeout(minutes) def url_lockout_timeout=(val) prop_set('url-lockout-timeout', val) end # set url category query timeout(seconds) def url_wait_timeout prop_get('url-wait-timeout') end # set url category query timeout(seconds) def url_wait_timeout=(val) prop_set('url-wait-timeout', val) end # set captive portal rate limit timeout(seconds) def cap_portal_ask_timeout prop_get('cap-portal-ask-timeout') end # set captive portal rate limit timeout(seconds) def cap_portal_ask_timeout=(val) prop_set('cap-portal-ask-timeout', val) end # set captive portal rate limit max request count def cap_portal_ask_requests prop_get('cap-portal-ask-requests') end # set captive portal rate limit max request count def cap_portal_ask_requests=(val) prop_set('cap-portal-ask-requests', val) end # set maximum captive portal sessions def cap_portal_max_session prop_get('cap-portal-max-session') end # set maximum captive portal sessions def cap_portal_max_session=(val) prop_set('cap-portal-max-session', val) end # whether to redirect with html meta header def cap_portal_html_redirect prop_get('cap-portal-html-redirect') end # whether to redirect with html meta header def cap_portal_html_redirect=(val) prop_set('cap-portal-html-redirect', val) end # whether to use transaction for stats for http proxy sessions def http_proxy_use_transaction prop_get('http-proxy-use-transaction') end # whether to use transaction for stats for http proxy sessions def http_proxy_use_transaction=(val) prop_set('http-proxy-use-transaction', val) end # whether to skip inspection of TCP session if queue limit is exceeded def tcp_bypass_exceed_queue prop_get('tcp-bypass-exceed-queue') end # whether to skip inspection of TCP session if queue limit is exceeded def tcp_bypass_exceed_queue=(val) prop_set('tcp-bypass-exceed-queue', val) end # whether to skip inspection of UDP session if queue limit is exceeded def udp_bypass_exceed_queue prop_get('udp-bypass-exceed-queue') end # whether to skip inspection of UDP session if queue limit is exceeded def udp_bypass_exceed_queue=(val) prop_set('udp-bypass-exceed-queue', val) end # whether to allow HTTP partial response def allow_http_range prop_get('allow-http-range') end # whether to allow HTTP partial response def allow_http_range=(val) prop_set('allow-http-range', val) end # number of segment of threat packet capture. def extended_capture_segment prop_get('extended-capture-segment') end # number of segment of threat packet capture. def extended_capture_segment=(val) prop_set('extended-capture-segment', val) end # keep on tracking filenames without considering profile def track_filename prop_get('track-filename') end # keep on tracking filenames without considering profile def track_filename=(val) prop_set('track-filename', val) end # whether to do hashing for virus signatures def hash_signature_allow prop_get('hash-signature-allow') end # whether to do hashing for virus signatures def hash_signature_allow=(val) prop_set('hash-signature-allow', val) end # set number of levels for decode filter def decode_filter_max_depth prop_get('decode-filter-max-depth') end # set number of levels for decode filter def decode_filter_max_depth=(val) prop_set('decode-filter-max-depth', val) end # whether to hold client request for URL category lookup def hold_client_request prop_get('hold-client-request') end # whether to hold client request for URL category lookup def hold_client_request=(val) prop_set('hold-client-request', val) end # Use cleartext proxy for HTTP header insertion def header_insert_cleartext_proxy prop_get('header-insert-cleartext-proxy') end # Use cleartext proxy for HTTP header insertion def header_insert_cleartext_proxy=(val) prop_set('header-insert-cleartext-proxy', val) end # Block session when cleartext proxy fails to start def block_on_cleartext_proxy_failure prop_get('block-on-cleartext-proxy-failure') end # Block session when cleartext proxy fails to start def block_on_cleartext_proxy_failure=(val) prop_set('block-on-cleartext-proxy-failure', val) end # set cloud DNS signature query timeout in milliseconds def cloud_dns_timeout prop_get('cloud-dns-timeout') end # set cloud DNS signature query timeout in milliseconds def cloud_dns_timeout=(val) prop_set('cloud-dns-timeout', val) end # set cloud DNS telemetry mask source ip address def cloud_dns_privacy_mask prop_get('cloud-dns-privacy-mask') end # set cloud DNS telemetry mask source ip address def cloud_dns_privacy_mask=(val) prop_set('cloud-dns-privacy-mask', val) end # Select Cleartext proxy mode for SIP TCP def siptcp_cleartext_proxy prop_get('siptcp-cleartext-proxy') end # Select Cleartext proxy mode for SIP TCP def siptcp_cleartext_proxy=(val) prop_set('siptcp-cleartext-proxy', val) end # whether to enable/disable cleartext proxy for HTTP/2 def http2_cleartext_proxy prop_get('http2-cleartext-proxy') end # whether to enable/disable cleartext proxy for HTTP/2 def http2_cleartext_proxy=(val) prop_set('http2-cleartext-proxy', val) end end # class Ctd def ctd @subclasses['ctd'] ||= Ctd.new(parent_instance: self, create_children: @create_children) end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end @props={"url-wait"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if wait for url category if not in cache"}, "url-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "set if proxy for ssl sessions if ip's url category is blocked"}, "notify-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set if user notification should be enabled"}, "answer-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"86400", "min"=>"1", "max"=>"86400", "help-string"=>"set user reply timeout value in seconds"}, "crl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set whether to use CRL to check certificate status"}, "ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set whether to use OCSP to check certificate status"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "session-cache-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"86400", "default"=>"3600", "help-string"=>"set session cache timeout value in seconds"}, "tcp-use-ts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set whether to use TCP timestamps"}, "fwd-proxy-server-cert-key-size-rsa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"0", "help-string"=>"select the rsa public key size for forward proxy", "enum"=> [{"value"=>"0", "help-string"=>"Defined by destination host"}, {"value"=>"1024", "help-string"=>"1024-bit RSA"}, {"value"=>"2048", "help-string"=>"2048-bit RSA"}, {"value"=>"3072", "help-string"=>"3072-bit RSA"}, {"value"=>"4096", "help-string"=>"4096-bit RSA"}]}, "fwd-proxy-server-cert-key-size-ecdsa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"0", "help-string"=>"select the ecdsa public key size for forward proxy", "enum"=> [{"value"=>"0", "help-string"=>"Defined by destination host"}, {"value"=>"256", "help-string"=>"256-bit ECDSA"}, {"value"=>"384", "help-string"=>"384-bit ECDSA"}]}, "default-elliptic-curve"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"256", "help-string"=>"default ECC curve for key exchange", "enum"=> [{"value"=>"192", "help-string"=>"secp192r1, aka prime192v1"}, {"value"=>"224", "help-string"=>"secp224r1"}, {"value"=>"256", "help-string"=>"secp256r1, aka prime256v1"}, {"value"=>"384", "help-string"=>"secp384r1"}, {"value"=>"521", "help-string"=>"secp521r1"}]}, "fptcp-rwin-max"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"524288", "max"=>"8388608", "default"=>"524288", "help-string"=> "Maximum TCP receive window for proxy TCP sessions in bytes"}} # set if wait for url category if not in cache def url_wait prop_get('url-wait') end # set if wait for url category if not in cache def url_wait=(val) prop_set('url-wait', val) end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy prop_get('url-proxy') end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy=(val) prop_set('url-proxy', val) end # set if user notification should be enabled def notify_user prop_get('notify-user') end # set if user notification should be enabled def notify_user=(val) prop_set('notify-user', val) end # set user reply timeout value in seconds def answer_timeout prop_get('answer-timeout') end # set user reply timeout value in seconds def answer_timeout=(val) prop_set('answer-timeout', val) end # set whether to use CRL to check certificate status def crl prop_get('crl') end # set whether to use CRL to check certificate status def crl=(val) prop_set('crl', val) end # set whether to use OCSP to check certificate status def ocsp prop_get('ocsp') end # set whether to use OCSP to check certificate status def ocsp=(val) prop_set('ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # set session cache timeout value in seconds def session_cache_timeout prop_get('session-cache-timeout') end # set session cache timeout value in seconds def session_cache_timeout=(val) prop_set('session-cache-timeout', val) end # set whether to use TCP timestamps def tcp_use_ts prop_get('tcp-use-ts') end # set whether to use TCP timestamps def tcp_use_ts=(val) prop_set('tcp-use-ts', val) end # select the rsa public key size for forward proxy def fwd_proxy_server_cert_key_size_rsa prop_get('fwd-proxy-server-cert-key-size-rsa') end # select the rsa public key size for forward proxy def fwd_proxy_server_cert_key_size_rsa=(val) prop_set('fwd-proxy-server-cert-key-size-rsa', val) end # select the ecdsa public key size for forward proxy def fwd_proxy_server_cert_key_size_ecdsa prop_get('fwd-proxy-server-cert-key-size-ecdsa') end # select the ecdsa public key size for forward proxy def fwd_proxy_server_cert_key_size_ecdsa=(val) prop_set('fwd-proxy-server-cert-key-size-ecdsa', val) end # default ECC curve for key exchange def default_elliptic_curve prop_get('default-elliptic-curve') end # default ECC curve for key exchange def default_elliptic_curve=(val) prop_set('default-elliptic-curve', val) end # Maximum TCP receive window for proxy TCP sessions in bytes def fptcp_rwin_max prop_get('fptcp-rwin-max') end # Maximum TCP receive window for proxy TCP sessions in bytes def fptcp_rwin_max=(val) prop_set('fptcp-rwin-max', val) end end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end class Session < ConfigClass def has_multiple_values? false end def _section :'session' end @props={"timeout-tcp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"3600", "min"=>"1", "max"=>"15999999", "help-string"=>"set tcp timeout value in seconds"}, "timeout-udp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"15999999", "help-string"=>"set udp timeout value in seconds"}, "timeout-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"6", "min"=>"1", "max"=>"15999999", "help-string"=>"set icmp timeout value in seconds"}, "timeout-default"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"15999999", "help-string"=>"set session default timeout value in seconds"}, "timeout-tcpinit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"60", "help-string"=> "set tcp initial session timeout (before SYN-ACK is received) value in seconds"}, "timeout-tcphandshake"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"10", "min"=>"1", "max"=>"60", "help-string"=> "set tcp handshake session timeout (before 3-way handshaking is completed) value in seconds"}, "timeout-tcp-half-closed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"120", "min"=>"1", "max"=>"604800", "help-string"=> "set session tcp half close timeout (after receiving first FIN/RST) value in seconds"}, "timeout-tcp-time-wait"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"1", "max"=>"600", "help-string"=> "set session tcp time wait timeout (after receiving second FIN/RST) value in seconds"}, "timeout-tcp-unverified-rst"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"600", "help-string"=> "set session tcp timeout value after receiving a RST with unverified sequence number in seconds"}, "timeout-captive-portal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"15999999", "help-string"=>"set captive-portal session timeout value in seconds"}, "timeout-discard-tcp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"15999999", "default"=>"90", "help-string"=>"set timeout of tcp session in discard state"}, "timeout-discard-udp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"15999999", "default"=>"60", "help-string"=>"set timeout of udp session in discard state"}, "timeout-discard-default"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"15999999", "default"=>"60", "help-string"=>"set timeout of non-tcp/udp session in discard state"}, "icmp-unreachable-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"200", "help-string"=> "set maximum number of ICMP unreachable messages sent per second"}, "timeout-scan"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5", "max"=>"30", "default"=>"10", "help-string"=>"application trickling timeout value in seconds"}, "scan-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"50", "max"=>"99", "default"=>"80", "help-string"=>"resource utilization threshold to trigger session scan"}, "scan-scaling-factor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"8", "min"=>"2", "max"=>"16", "help-string"=>"set scan scaling factor"}, "accelerated-aging-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable accelerated session aging"}, "accelerated-aging-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"80", "min"=>"50", "max"=>"99", "help-string"=> "set accelerated aging threshold in percentage of session utilization"}, "accelerated-aging-scaling-factor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"2", "max"=>"16", "help-string"=>"set accelerated session aging scaling factor (power of 2)"}, "packet-buffer-protection-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable packet buffer protection"}, "packet-buffer-protection-monitor-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable packet buffer protection monitor only mode"}, "packet-buffer-protection-alert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"50", "min"=>"0", "max"=>"99", "help-string"=>"percentage of packet buffer utilization"}, "packet-buffer-protection-activate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"80", "min"=>"0", "max"=>"99", "help-string"=>"percentage of packet buffer utilization"}, "packet-buffer-protection-block-countdown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"80", "min"=>"0", "max"=>"99", "help-string"=>"percentage above which the block timer is counting down"}, "packet-buffer-protection-block-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"0", "max"=>"65535", "help-string"=> "time the session continues to be abusive to packet buffers"}, "packet-buffer-protection-block-duration-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"3600", "min"=>"1", "max"=>"15999999", "help-string"=> "time the session is blocked after being abusive to packet buffers"}, "packet-buffer-protection-use-latency"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "use buffering latency to make packet buffer protection decision"}, "packet-buffer-protection-latency-alert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"50", "min"=>"1", "max"=>"20000", "help-string"=> "buffering latency that triggers pbp alert (in milliseconds)"}, "packet-buffer-protection-latency-activate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"200", "min"=>"1", "max"=>"20000", "help-string"=> "buffering latency that triggers Random Early Drop (RED) (in milliseconds)"}, "packet-buffer-protection-latency-block-countdown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"1", "max"=>"20000", "help-string"=>"buffering latency that triggers block countdown timer"}, "packet-buffer-protection-latency-max-tolerate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"1", "max"=>"20000", "help-string"=> "buffering latency that triggers 100% packet drop for abusive traffic"}, "tcp-reject-non-syn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"reject non-SYN TCP packet for session setup"}, "tcp-retransmit-scan"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable tcp retransmit scan "}, "offload"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable hardware session offloading"}, "ipv6-firewalling"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable IPv6 firewalling"}, "express-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable express-mode", "prune-on-sdb"=> "cfg.platform.model=PA-VM,cfg.platform.model=PA-500,cfg.platform.model=PA-5050,cfg.platform.model=PA-5020,cfg.platform.model=PA-5060,cfg.platform.model=PA-200,cfg.platform.model=PA-3050,cfg.platform.model=PA-3020,cfg.platform.model=PA-7050,cfg.platform.model=PA-7080,cfg.platform.model=PA-820,cfg.platform.model=PA-850,cfg.platform.model=PA-220,cfg.platform.model=PA-5220,cfg.platform.model=PA-5250,cfg.platform.model=PA-5260,cfg.platform.model=PA-3220,cfg.platform.model=PA-3260,cfg.platform.model=PA-200R,cfg.platform.model=PA-3220-ZTP,cfg.platform.model=PA-3250-ZTP,cfg.platform.model=PA-3260-ZTP,cfg.platform.model=PA-820-ZTP,cfg.platform.model=PA-850-ZTP,cfg.platform.model=PA-220-ZTP,cfg.platform.model=PA-220R-ZTP"}, "resource-limit-behavior"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"drop", "help-string"=>"behavior when resource limit is reached", "enum"=>[{"value"=>"bypass"}, {"value"=>"drop"}]}, "multicast-route-setup-buffering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "enable/disable multicast packet queue for pending multicast route"}, "max-pending-mcast-pkts-per-session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "default"=>"1000", "help-string"=>"Max number of multicast packets queued per session"}, "timeout-sctp-init"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"120", "help-string"=>"set sctp init timeout value in seconds"}, "timeout-sctp-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"1", "max"=>"120", "help-string"=>"set sctp init cookie timeout value in seconds"}, "timeout-discard-sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"600", "help-string"=>"set sctp discard timeout value in seconds"}, "timeout-sctp-shutdown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"1", "max"=>"600", "help-string"=>"set sctp shutdown timeout value in seconds"}, "timeout-sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"3600", "min"=>"1", "max"=>"86400", "help-string"=>"set sctp timeout value in seconds"}, "timeout-5gc-delete"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"15", "max"=>"1800", "help-string"=>"set 5gc delete timeout value in seconds"}, "dhcp-bcast-session-on"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "enable/disable session setup for ingress DHCP broadcast packets at DHCP interfaces."}} # set tcp timeout value in seconds def timeout_tcp prop_get('timeout-tcp') end # set tcp timeout value in seconds def timeout_tcp=(val) prop_set('timeout-tcp', val) end # set udp timeout value in seconds def timeout_udp prop_get('timeout-udp') end # set udp timeout value in seconds def timeout_udp=(val) prop_set('timeout-udp', val) end # set icmp timeout value in seconds def timeout_icmp prop_get('timeout-icmp') end # set icmp timeout value in seconds def timeout_icmp=(val) prop_set('timeout-icmp', val) end # set session default timeout value in seconds def timeout_default prop_get('timeout-default') end # set session default timeout value in seconds def timeout_default=(val) prop_set('timeout-default', val) end # set tcp initial session timeout (before SYN-ACK is received) value in seconds def timeout_tcpinit prop_get('timeout-tcpinit') end # set tcp initial session timeout (before SYN-ACK is received) value in seconds def timeout_tcpinit=(val) prop_set('timeout-tcpinit', val) end # set tcp handshake session timeout (before 3-way handshaking is completed) value in seconds def timeout_tcphandshake prop_get('timeout-tcphandshake') end # set tcp handshake session timeout (before 3-way handshaking is completed) value in seconds def timeout_tcphandshake=(val) prop_set('timeout-tcphandshake', val) end # set session tcp half close timeout (after receiving first FIN/RST) value in seconds def timeout_tcp_half_closed prop_get('timeout-tcp-half-closed') end # set session tcp half close timeout (after receiving first FIN/RST) value in seconds def timeout_tcp_half_closed=(val) prop_set('timeout-tcp-half-closed', val) end # set session tcp time wait timeout (after receiving second FIN/RST) value in seconds def timeout_tcp_time_wait prop_get('timeout-tcp-time-wait') end # set session tcp time wait timeout (after receiving second FIN/RST) value in seconds def timeout_tcp_time_wait=(val) prop_set('timeout-tcp-time-wait', val) end # set session tcp timeout value after receiving a RST with unverified sequence number in seconds def timeout_tcp_unverified_rst prop_get('timeout-tcp-unverified-rst') end # set session tcp timeout value after receiving a RST with unverified sequence number in seconds def timeout_tcp_unverified_rst=(val) prop_set('timeout-tcp-unverified-rst', val) end # set captive-portal session timeout value in seconds def timeout_captive_portal prop_get('timeout-captive-portal') end # set captive-portal session timeout value in seconds def timeout_captive_portal=(val) prop_set('timeout-captive-portal', val) end # set timeout of tcp session in discard state def timeout_discard_tcp prop_get('timeout-discard-tcp') end # set timeout of tcp session in discard state def timeout_discard_tcp=(val) prop_set('timeout-discard-tcp', val) end # set timeout of udp session in discard state def timeout_discard_udp prop_get('timeout-discard-udp') end # set timeout of udp session in discard state def timeout_discard_udp=(val) prop_set('timeout-discard-udp', val) end # set timeout of non-tcp/udp session in discard state def timeout_discard_default prop_get('timeout-discard-default') end # set timeout of non-tcp/udp session in discard state def timeout_discard_default=(val) prop_set('timeout-discard-default', val) end # set maximum number of ICMP unreachable messages sent per second def icmp_unreachable_rate prop_get('icmp-unreachable-rate') end # set maximum number of ICMP unreachable messages sent per second def icmp_unreachable_rate=(val) prop_set('icmp-unreachable-rate', val) end # application trickling timeout value in seconds def timeout_scan prop_get('timeout-scan') end # application trickling timeout value in seconds def timeout_scan=(val) prop_set('timeout-scan', val) end # resource utilization threshold to trigger session scan def scan_threshold prop_get('scan-threshold') end # resource utilization threshold to trigger session scan def scan_threshold=(val) prop_set('scan-threshold', val) end # set scan scaling factor def scan_scaling_factor prop_get('scan-scaling-factor') end # set scan scaling factor def scan_scaling_factor=(val) prop_set('scan-scaling-factor', val) end # enable/disable accelerated session aging def accelerated_aging_enable prop_get('accelerated-aging-enable') end # enable/disable accelerated session aging def accelerated_aging_enable=(val) prop_set('accelerated-aging-enable', val) end # set accelerated aging threshold in percentage of session utilization def accelerated_aging_threshold prop_get('accelerated-aging-threshold') end # set accelerated aging threshold in percentage of session utilization def accelerated_aging_threshold=(val) prop_set('accelerated-aging-threshold', val) end # set accelerated session aging scaling factor (power of 2) def accelerated_aging_scaling_factor prop_get('accelerated-aging-scaling-factor') end # set accelerated session aging scaling factor (power of 2) def accelerated_aging_scaling_factor=(val) prop_set('accelerated-aging-scaling-factor', val) end # enable/disable packet buffer protection def packet_buffer_protection_enable prop_get('packet-buffer-protection-enable') end # enable/disable packet buffer protection def packet_buffer_protection_enable=(val) prop_set('packet-buffer-protection-enable', val) end # enable/disable packet buffer protection monitor only mode def packet_buffer_protection_monitor_only prop_get('packet-buffer-protection-monitor-only') end # enable/disable packet buffer protection monitor only mode def packet_buffer_protection_monitor_only=(val) prop_set('packet-buffer-protection-monitor-only', val) end # percentage of packet buffer utilization def packet_buffer_protection_alert prop_get('packet-buffer-protection-alert') end # percentage of packet buffer utilization def packet_buffer_protection_alert=(val) prop_set('packet-buffer-protection-alert', val) end # percentage of packet buffer utilization def packet_buffer_protection_activate prop_get('packet-buffer-protection-activate') end # percentage of packet buffer utilization def packet_buffer_protection_activate=(val) prop_set('packet-buffer-protection-activate', val) end # percentage above which the block timer is counting down def packet_buffer_protection_block_countdown prop_get('packet-buffer-protection-block-countdown') end # percentage above which the block timer is counting down def packet_buffer_protection_block_countdown=(val) prop_set('packet-buffer-protection-block-countdown', val) end # time the session continues to be abusive to packet buffers def packet_buffer_protection_block_hold_time prop_get('packet-buffer-protection-block-hold-time') end # time the session continues to be abusive to packet buffers def packet_buffer_protection_block_hold_time=(val) prop_set('packet-buffer-protection-block-hold-time', val) end # time the session is blocked after being abusive to packet buffers def packet_buffer_protection_block_duration_time prop_get('packet-buffer-protection-block-duration-time') end # time the session is blocked after being abusive to packet buffers def packet_buffer_protection_block_duration_time=(val) prop_set('packet-buffer-protection-block-duration-time', val) end # use buffering latency to make packet buffer protection decision def packet_buffer_protection_use_latency prop_get('packet-buffer-protection-use-latency') end # use buffering latency to make packet buffer protection decision def packet_buffer_protection_use_latency=(val) prop_set('packet-buffer-protection-use-latency', val) end # buffering latency that triggers pbp alert (in milliseconds) def packet_buffer_protection_latency_alert prop_get('packet-buffer-protection-latency-alert') end # buffering latency that triggers pbp alert (in milliseconds) def packet_buffer_protection_latency_alert=(val) prop_set('packet-buffer-protection-latency-alert', val) end # buffering latency that triggers Random Early Drop (RED) (in milliseconds) def packet_buffer_protection_latency_activate prop_get('packet-buffer-protection-latency-activate') end # buffering latency that triggers Random Early Drop (RED) (in milliseconds) def packet_buffer_protection_latency_activate=(val) prop_set('packet-buffer-protection-latency-activate', val) end # buffering latency that triggers block countdown timer def packet_buffer_protection_latency_block_countdown prop_get('packet-buffer-protection-latency-block-countdown') end # buffering latency that triggers block countdown timer def packet_buffer_protection_latency_block_countdown=(val) prop_set('packet-buffer-protection-latency-block-countdown', val) end # buffering latency that triggers 100% packet drop for abusive traffic def packet_buffer_protection_latency_max_tolerate prop_get('packet-buffer-protection-latency-max-tolerate') end # buffering latency that triggers 100% packet drop for abusive traffic def packet_buffer_protection_latency_max_tolerate=(val) prop_set('packet-buffer-protection-latency-max-tolerate', val) end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn prop_get('tcp-reject-non-syn') end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn=(val) prop_set('tcp-reject-non-syn', val) end # enable/disable tcp retransmit scan def tcp_retransmit_scan prop_get('tcp-retransmit-scan') end # enable/disable tcp retransmit scan def tcp_retransmit_scan=(val) prop_set('tcp-retransmit-scan', val) end # enable/disable hardware session offloading def offload prop_get('offload') end # enable/disable hardware session offloading def offload=(val) prop_set('offload', val) end # enable/disable IPv6 firewalling def ipv6_firewalling prop_get('ipv6-firewalling') end # enable/disable IPv6 firewalling def ipv6_firewalling=(val) prop_set('ipv6-firewalling', val) end # enable/disable express-mode def express_mode prop_get('express-mode') end # enable/disable express-mode def express_mode=(val) prop_set('express-mode', val) end # behavior when resource limit is reached def resource_limit_behavior prop_get('resource-limit-behavior') end # behavior when resource limit is reached def resource_limit_behavior=(val) prop_set('resource-limit-behavior', val) end # enable/disable multicast packet queue for pending multicast route def multicast_route_setup_buffering prop_get('multicast-route-setup-buffering') end # enable/disable multicast packet queue for pending multicast route def multicast_route_setup_buffering=(val) prop_set('multicast-route-setup-buffering', val) end # Max number of multicast packets queued per session def max_pending_mcast_pkts_per_session prop_get('max-pending-mcast-pkts-per-session') end # Max number of multicast packets queued per session def max_pending_mcast_pkts_per_session=(val) prop_set('max-pending-mcast-pkts-per-session', val) end # set sctp init timeout value in seconds def timeout_sctp_init prop_get('timeout-sctp-init') end # set sctp init timeout value in seconds def timeout_sctp_init=(val) prop_set('timeout-sctp-init', val) end # set sctp init cookie timeout value in seconds def timeout_sctp_cookie prop_get('timeout-sctp-cookie') end # set sctp init cookie timeout value in seconds def timeout_sctp_cookie=(val) prop_set('timeout-sctp-cookie', val) end # set sctp discard timeout value in seconds def timeout_discard_sctp prop_get('timeout-discard-sctp') end # set sctp discard timeout value in seconds def timeout_discard_sctp=(val) prop_set('timeout-discard-sctp', val) end # set sctp shutdown timeout value in seconds def timeout_sctp_shutdown prop_get('timeout-sctp-shutdown') end # set sctp shutdown timeout value in seconds def timeout_sctp_shutdown=(val) prop_set('timeout-sctp-shutdown', val) end # set sctp timeout value in seconds def timeout_sctp prop_get('timeout-sctp') end # set sctp timeout value in seconds def timeout_sctp=(val) prop_set('timeout-sctp', val) end # set 5gc delete timeout value in seconds def timeout_5gc_delete prop_get('timeout-5gc-delete') end # set 5gc delete timeout value in seconds def timeout_5gc_delete=(val) prop_set('timeout-5gc-delete', val) end # enable/disable session setup for ingress DHCP broadcast packets at DHCP interfaces. def dhcp_bcast_session_on prop_get('dhcp-bcast-session-on') end # enable/disable session setup for ingress DHCP broadcast packets at DHCP interfaces. def dhcp_bcast_session_on=(val) prop_set('dhcp-bcast-session-on', val) end end # class Session def session @subclasses['session'] ||= Session.new(parent_instance: self, create_children: @create_children) end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end @props={"bypass-exceed-oo-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to skip inspection of session if out-of-order packets limit is exceeded"}, "allow-challenge-ack"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow arbitrary ACK in response to SYN"}, "check-timestamp-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to drop packets with invalid timestamp option"}, "asymmetric-path"=> {"node-type"=>"element", "type"=>"enum", "default"=>"drop", "optional"=>"yes", "help-string"=> "actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST", "enum"=> [{"value"=>"drop", "help-string"=> "drop offending packets that violated TCP sliding window tracking, enable TCP sequence number check for FIN/RST"}, {"value"=>"bypass", "help-string"=> "bypass inspection for the session that has TCP sliding window tracking errors"}]}, "urgent-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"clear", "help-string"=>"clear urgent flag in TCP header", "enum"=> [{"value"=>"clear", "help-string"=>"always clear urgent data pointers"}, {"value"=>"oobinline", "help-string"=>"assume host process OOB data inline with normal data"}]}, "drop-zero-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to drop TCP packet if flag becomes zero after clear urgent flag"}, "strip-mptcp-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to strip MPTCP option"}} # whether to skip inspection of session if out-of-order packets limit is exceeded def bypass_exceed_oo_queue prop_get('bypass-exceed-oo-queue') end # whether to skip inspection of session if out-of-order packets limit is exceeded def bypass_exceed_oo_queue=(val) prop_set('bypass-exceed-oo-queue', val) end # Allow arbitrary ACK in response to SYN def allow_challenge_ack prop_get('allow-challenge-ack') end # Allow arbitrary ACK in response to SYN def allow_challenge_ack=(val) prop_set('allow-challenge-ack', val) end # whether to drop packets with invalid timestamp option def check_timestamp_option prop_get('check-timestamp-option') end # whether to drop packets with invalid timestamp option def check_timestamp_option=(val) prop_set('check-timestamp-option', val) end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path prop_get('asymmetric-path') end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path=(val) prop_set('asymmetric-path', val) end # clear urgent flag in TCP header def urgent_data prop_get('urgent-data') end # clear urgent flag in TCP header def urgent_data=(val) prop_set('urgent-data', val) end # whether to drop TCP packet if flag becomes zero after clear urgent flag def drop_zero_flag prop_get('drop-zero-flag') end # whether to drop TCP packet if flag becomes zero after clear urgent flag def drop_zero_flag=(val) prop_set('drop-zero-flag', val) end # whether to strip MPTCP option def strip_mptcp_option prop_get('strip-mptcp-option') end # whether to strip MPTCP option def strip_mptcp_option=(val) prop_set('strip-mptcp-option', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Zip < ConfigClass def has_multiple_values? false end def _section :'zip' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable zip engine"}, "mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto", "help-string"=>"whether to use hardware or software zip engine, or both", "enum"=> [{"value"=>"hw", "help-string"=>"hardware zip engine"}, {"value"=>"sw", "help-string"=>"software zip engine"}, {"value"=>"auto", "help-string"=>"automatically switch between hw and sw zip engines"}]}} # enable/disable zip engine def enable prop_get('enable') end # enable/disable zip engine def enable=(val) prop_set('enable', val) end # whether to use hardware or software zip engine, or both def mode prop_get('mode') end # whether to use hardware or software zip engine, or both def mode=(val) prop_set('mode', val) end end # class Zip def zip @subclasses['zip'] ||= Zip.new(parent_instance: self, create_children: @create_children) end class Http2 < ConfigClass def has_multiple_values? false end def _section :'http2' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable http/2 inspection"}, "stream-closed-buffer-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"10", "min"=>"1", "max"=>"100", "help-string"=>"set closed stream session ring buffer threshold"}, "server-push"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable http/2 server push support"}, "connection-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable http/2 connection logging"}} # enable/disable http/2 inspection def enable prop_get('enable') end # enable/disable http/2 inspection def enable=(val) prop_set('enable', val) end # set closed stream session ring buffer threshold def stream_closed_buffer_threshold prop_get('stream-closed-buffer-threshold') end # set closed stream session ring buffer threshold def stream_closed_buffer_threshold=(val) prop_set('stream-closed-buffer-threshold', val) end # enable/disable http/2 server push support def server_push prop_get('server-push') end # enable/disable http/2 server push support def server_push=(val) prop_set('server-push', val) end # enable/disable http/2 connection logging def connection_logging prop_get('connection-logging') end # enable/disable http/2 connection logging def connection_logging=(val) prop_set('connection-logging', val) end end # class Http2 def http2 @subclasses['http2'] ||= Http2.new(parent_instance: self, create_children: @create_children) end class Pow < ConfigClass def has_multiple_values? false end def _section :'pow' end @props={"wqe-tag-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe sess id tag check"}, "wqe-inuse-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe in use check "}, "wqe-swbuf-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe swbuf trailer check "}, "wqe-swbuf-track"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable wqe swbuf stack trace"}, "wqe-hexspeak"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe hexspeak "}, "wqe-swbuf-ref"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe swbuf ref in clone"}} # enable/disable wqe sess id tag check def wqe_tag_check prop_get('wqe-tag-check') end # enable/disable wqe sess id tag check def wqe_tag_check=(val) prop_set('wqe-tag-check', val) end # enable/disable wqe in use check def wqe_inuse_check prop_get('wqe-inuse-check') end # enable/disable wqe in use check def wqe_inuse_check=(val) prop_set('wqe-inuse-check', val) end # enable/disable wqe swbuf trailer check def wqe_swbuf_check prop_get('wqe-swbuf-check') end # enable/disable wqe swbuf trailer check def wqe_swbuf_check=(val) prop_set('wqe-swbuf-check', val) end # enable/disable wqe swbuf stack trace def wqe_swbuf_track prop_get('wqe-swbuf-track') end # enable/disable wqe swbuf stack trace def wqe_swbuf_track=(val) prop_set('wqe-swbuf-track', val) end # enable/disable wqe hexspeak def wqe_hexspeak prop_get('wqe-hexspeak') end # enable/disable wqe hexspeak def wqe_hexspeak=(val) prop_set('wqe-hexspeak', val) end # enable/disable wqe swbuf ref in clone def wqe_swbuf_ref prop_get('wqe-swbuf-ref') end # enable/disable wqe swbuf ref in clone def wqe_swbuf_ref=(val) prop_set('wqe-swbuf-ref', val) end end # class Pow def pow @subclasses['pow'] ||= Pow.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end @props={"rematch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"rematch all sessions with new config policy"}} # rematch all sessions with new config policy def rematch prop_get('rematch') end # rematch all sessions with new config policy def rematch=(val) prop_set('rematch', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class Logging < ConfigClass def has_multiple_values? false end def _section :'logging' end class EnhancedApplicationLogging < ConfigClass def has_multiple_values? false end def _section :'enhanced-application-logging' end class DisableApplication < XML::ConfigClass def has_multiple_values? true end def _section :'disable-application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name", "##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DisableApplication def disable_application if @create_children @subclasses['disable-application'] ||= DisableApplication.new(parent_instance: self, create_children: @create_children) else DisableApplication.new(parent_instance: self) end end class DisableGlobal < ConfigClass def has_multiple_values? false end def _section :'disable-global' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class Arp < ConfigClass def has_multiple_values? false end def _section :'arp' end @props={} end # class Arp def arp @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) end class NonSynTcp < ConfigClass def has_multiple_values? false end def _section :'non-syn-tcp' end @props={} end # class NonSynTcp def non_syn_tcp @subclasses['non-syn-tcp'] ||= NonSynTcp.new(parent_instance: self, create_children: @create_children) end class ExtTraffic < ConfigClass def has_multiple_values? false end def _section :'ext-traffic' end @props={} end # class ExtTraffic def ext_traffic @subclasses['ext-traffic'] ||= ExtTraffic.new(parent_instance: self, create_children: @create_children) end class HipReport < ConfigClass def has_multiple_values? false end def _section :'hip-report' end @props={} end # class HipReport def hip_report @subclasses['hip-report'] ||= HipReport.new(parent_instance: self, create_children: @create_children) end class DpChannel < ConfigClass def has_multiple_values? false end def _section :'dp-channel' end @props={} end # class DpChannel def dp_channel @subclasses['dp-channel'] ||= DpChannel.new(parent_instance: self, create_children: @create_children) end @props={} end # class DisableGlobal def disable_global @subclasses['disable-global'] ||= DisableGlobal.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable enhanced-application-logging"}} # enable/disable enhanced-application-logging def enable prop_get('enable') end # enable/disable enhanced-application-logging def enable=(val) prop_set('enable', val) end end # class EnhancedApplicationLogging def enhanced_application_logging @subclasses['enhanced-application-logging'] ||= EnhancedApplicationLogging.new(parent_instance: self, create_children: @create_children) end class LoggingServiceForwarding < ConfigClass def has_multiple_values? false end def _section :'logging-service-forwarding' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "enable-duplicate-logging"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "logging-service-regions"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Logging Service log-forwarding region selection", "complete-handler"=>"lcaas-region-complete-handler", "autocomplete"=>"yes"}, "ls-connection-count"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"20", "default"=>"5", "help-string"=>"Connection count to logging service"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def enable_duplicate_logging prop_get('enable-duplicate-logging') end def enable_duplicate_logging=(val) prop_set('enable-duplicate-logging', val) end # Logging Service log-forwarding region selection def logging_service_regions prop_get('logging-service-regions') end # Logging Service log-forwarding region selection def logging_service_regions=(val) prop_set('logging-service-regions', val) end # Connection count to logging service def ls_connection_count prop_get('ls-connection-count') end # Connection count to logging service def ls_connection_count=(val) prop_set('ls-connection-count', val) end end # class LoggingServiceForwarding def logging_service_forwarding @subclasses['logging-service-forwarding'] ||= LoggingServiceForwarding.new(parent_instance: self, create_children: @create_children) end @props={"max-log-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"50000", "min"=>"0", "max"=>"50000", "help-string"=>"set max. logging rate"}, "max-packet-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2560", "min"=>"0", "max"=>"2560", "help-string"=>"set max. packet logging rate"}, "log-suppression"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"yes", "help-string"=>"enable/disable log suppression", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # set max. logging rate def max_log_rate prop_get('max-log-rate') end # set max. logging rate def max_log_rate=(val) prop_set('max-log-rate', val) end # set max. packet logging rate def max_packet_rate prop_get('max-packet-rate') end # set max. packet logging rate def max_packet_rate=(val) prop_set('max-packet-rate', val) end # enable/disable log suppression def log_suppression prop_get('log-suppression') end # enable/disable log suppression def log_suppression=(val) prop_set('log-suppression', val) end end # class Logging def logging @subclasses['logging'] ||= Logging.new(parent_instance: self, create_children: @create_children) end class Management < ConfigClass def has_multiple_values? false end def _section :'management' end class SecureConnClient < ConfigClass def has_multiple_values? false end def _section :'secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in management connections to Panorama and Log collectors", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}} # Custom certificate used in management connections to Panorama and Log collectors def certificate prop_get('certificate') end # Custom certificate used in management connections to Panorama and Log collectors def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=>["#config/shared/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={"check-server-identity"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no'"}, "enable-secure-wildfire-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for Wildfire connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-pandb-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for pandb connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-panorama-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for panorama connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-lc-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for log collector connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}} # Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no' def check_server_identity prop_get('check-server-identity') end # Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no' def check_server_identity=(val) prop_set('check-server-identity', val) end # Use the secure-client certificate settings for Wildfire connections. Default setting : 'no' def enable_secure_wildfire_communication prop_get('enable-secure-wildfire-communication') end # Use the secure-client certificate settings for Wildfire connections. Default setting : 'no' def enable_secure_wildfire_communication=(val) prop_set('enable-secure-wildfire-communication', val) end # Use the secure-client certificate settings for pandb connections. Default setting : 'no' def enable_secure_pandb_communication prop_get('enable-secure-pandb-communication') end # Use the secure-client certificate settings for pandb connections. Default setting : 'no' def enable_secure_pandb_communication=(val) prop_set('enable-secure-pandb-communication', val) end # Use the secure-client certificate settings for panorama connections. Default setting : 'no' def enable_secure_panorama_communication prop_get('enable-secure-panorama-communication') end # Use the secure-client certificate settings for panorama connections. Default setting : 'no' def enable_secure_panorama_communication=(val) prop_set('enable-secure-panorama-communication', val) end # Use the secure-client certificate settings for log collector connections. Default setting : 'no' def enable_secure_lc_communication prop_get('enable-secure-lc-communication') end # Use the secure-client certificate settings for log collector connections. Default setting : 'no' def enable_secure_lc_communication=(val) prop_set('enable-secure-lc-communication', val) end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end end # class SecureConnClient def secure_conn_client @subclasses['secure-conn-client'] ||= SecureConnClient.new(parent_instance: self, create_children: @create_children) end class SecureConnServer < ConfigClass def has_multiple_values? false end def _section :'secure-conn-server' end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["#config/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure server settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Use the secure server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end end # class SecureConnServer def secure_conn_server @subclasses['secure-conn-server'] ||= SecureConnServer.new(parent_instance: self, create_children: @create_children) end class QuotaSettings < ConfigClass def has_multiple_values? false end def _section :'quota-settings' end class ChassisQuota < ConfigClass def has_multiple_values? false end def _section :'chassis-quota' end class LogCard < ConfigClass def has_multiple_values? false end def _section :'log-card' end @props={"traffic"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic logs quota percentage"}, "threat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat logs quota percentage"}, "trsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic summary quota percentage"}, "thsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat summary quota percentage"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"url summary quota percentage"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly traffic summary quota percentage"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily traffic summary quota percentage"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly traffic summary quota percentage"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly threat summary quota percentage"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily threat summary quota percentage"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly threat summary quota percentage"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly url summary quota percentage"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily url summary quota percentage"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly url summary quota percentage"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat packet capture quota percentage"}, "hipmatch"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hip match quota percentage"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"User ID logs quota percentage"}, "iptag"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"IP-Tag logs quota percentage"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Authentication logs quota percentage"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP logs quota percentage"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP summary quota percentage"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly Tunnel and GTP summary quota percentage"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily Tunnel and GTP summary quota percentage"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly Tunnel and GTP summary quota percentage"}, "decryption"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption logs quota percentage"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption summary quota percentage"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly decryption summary quota percentage"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily decryption summary quota percentage"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly decryption summary quota percentage"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"globalprotect logs quota percentage"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP logs quota percentage"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP summary quota percentage"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly SCTP summary quota percentage"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily SCTP summary quota percentage"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly SCTP summary quota percentage"}} # traffic logs quota percentage def traffic prop_get('traffic') end # traffic logs quota percentage def traffic=(val) prop_set('traffic', val) end # threat logs quota percentage def threat prop_get('threat') end # threat logs quota percentage def threat=(val) prop_set('threat', val) end # traffic summary quota percentage def trsum prop_get('trsum') end # traffic summary quota percentage def trsum=(val) prop_set('trsum', val) end # threat summary quota percentage def thsum prop_get('thsum') end # threat summary quota percentage def thsum=(val) prop_set('thsum', val) end # url summary quota percentage def urlsum prop_get('urlsum') end # url summary quota percentage def urlsum=(val) prop_set('urlsum', val) end # Hourly traffic summary quota percentage def hourlytrsum prop_get('hourlytrsum') end # Hourly traffic summary quota percentage def hourlytrsum=(val) prop_set('hourlytrsum', val) end # Daily traffic summary quota percentage def dailytrsum prop_get('dailytrsum') end # Daily traffic summary quota percentage def dailytrsum=(val) prop_set('dailytrsum', val) end # Weekly traffic summary quota percentage def weeklytrsum prop_get('weeklytrsum') end # Weekly traffic summary quota percentage def weeklytrsum=(val) prop_set('weeklytrsum', val) end # Hourly threat summary quota percentage def hourlythsum prop_get('hourlythsum') end # Hourly threat summary quota percentage def hourlythsum=(val) prop_set('hourlythsum', val) end # Daily threat summary quota percentage def dailythsum prop_get('dailythsum') end # Daily threat summary quota percentage def dailythsum=(val) prop_set('dailythsum', val) end # Weekly threat summary quota percentage def weeklythsum prop_get('weeklythsum') end # Weekly threat summary quota percentage def weeklythsum=(val) prop_set('weeklythsum', val) end # Hourly url summary quota percentage def hourlyurlsum prop_get('hourlyurlsum') end # Hourly url summary quota percentage def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # Daily url summary quota percentage def dailyurlsum prop_get('dailyurlsum') end # Daily url summary quota percentage def dailyurlsum=(val) prop_set('dailyurlsum', val) end # Weekly url summary quota percentage def weeklyurlsum prop_get('weeklyurlsum') end # Weekly url summary quota percentage def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # threat packet capture quota percentage def threat_pcaps prop_get('threat-pcaps') end # threat packet capture quota percentage def threat_pcaps=(val) prop_set('threat-pcaps', val) end # Hip match quota percentage def hipmatch prop_get('hipmatch') end # Hip match quota percentage def hipmatch=(val) prop_set('hipmatch', val) end # User ID logs quota percentage def userid prop_get('userid') end # User ID logs quota percentage def userid=(val) prop_set('userid', val) end # IP-Tag logs quota percentage def iptag prop_get('iptag') end # IP-Tag logs quota percentage def iptag=(val) prop_set('iptag', val) end # Authentication logs quota percentage def auth prop_get('auth') end # Authentication logs quota percentage def auth=(val) prop_set('auth', val) end # Tunnel and GTP logs quota percentage def gtp prop_get('gtp') end # Tunnel and GTP logs quota percentage def gtp=(val) prop_set('gtp', val) end # Tunnel and GTP summary quota percentage def gtpsum prop_get('gtpsum') end # Tunnel and GTP summary quota percentage def gtpsum=(val) prop_set('gtpsum', val) end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum prop_get('hourlygtpsum') end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # Daily Tunnel and GTP summary quota percentage def dailygtpsum prop_get('dailygtpsum') end # Daily Tunnel and GTP summary quota percentage def dailygtpsum=(val) prop_set('dailygtpsum', val) end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum prop_get('weeklygtpsum') end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # decryption logs quota percentage def decryption prop_get('decryption') end # decryption logs quota percentage def decryption=(val) prop_set('decryption', val) end # decryption summary quota percentage def desum prop_get('desum') end # decryption summary quota percentage def desum=(val) prop_set('desum', val) end # Hourly decryption summary quota percentage def hourlydesum prop_get('hourlydesum') end # Hourly decryption summary quota percentage def hourlydesum=(val) prop_set('hourlydesum', val) end # Daily decryption summary quota percentage def dailydesum prop_get('dailydesum') end # Daily decryption summary quota percentage def dailydesum=(val) prop_set('dailydesum', val) end # Weekly decryption summary quota percentage def weeklydesum prop_get('weeklydesum') end # Weekly decryption summary quota percentage def weeklydesum=(val) prop_set('weeklydesum', val) end # globalprotect logs quota percentage def globalprotect prop_get('globalprotect') end # globalprotect logs quota percentage def globalprotect=(val) prop_set('globalprotect', val) end # SCTP logs quota percentage def sctp prop_get('sctp') end # SCTP logs quota percentage def sctp=(val) prop_set('sctp', val) end # SCTP summary quota percentage def sctpsum prop_get('sctpsum') end # SCTP summary quota percentage def sctpsum=(val) prop_set('sctpsum', val) end # Hourly SCTP summary quota percentage def hourlysctpsum prop_get('hourlysctpsum') end # Hourly SCTP summary quota percentage def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # Daily SCTP summary quota percentage def dailysctpsum prop_get('dailysctpsum') end # Daily SCTP summary quota percentage def dailysctpsum=(val) prop_set('dailysctpsum', val) end # Weekly SCTP summary quota percentage def weeklysctpsum prop_get('weeklysctpsum') end # Weekly SCTP summary quota percentage def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end end # class LogCard def log_card @subclasses['log-card'] ||= LogCard.new(parent_instance: self, create_children: @create_children) end class MgmtCard < ConfigClass def has_multiple_values? false end def _section :'mgmt-card' end @props={"config"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"configuration logs quota percentage"}, "system"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"system logs quota percentage"}, "alarm"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"alarm logs quota percentage"}, "appstat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application statistics quota percentage"}, "hip-reports"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"host information profile quota percentage"}, "application-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application packet capture quota percentage"}, "debug-filter-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"debug filter packet capture quota percentage"}, "dlp-logs"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"data filter packet capture quota percentage"}} # configuration logs quota percentage def config prop_get('config') end # configuration logs quota percentage def config=(val) prop_set('config', val) end # system logs quota percentage def system prop_get('system') end # system logs quota percentage def system=(val) prop_set('system', val) end # alarm logs quota percentage def alarm prop_get('alarm') end # alarm logs quota percentage def alarm=(val) prop_set('alarm', val) end # application statistics quota percentage def appstat prop_get('appstat') end # application statistics quota percentage def appstat=(val) prop_set('appstat', val) end # host information profile quota percentage def hip_reports prop_get('hip-reports') end # host information profile quota percentage def hip_reports=(val) prop_set('hip-reports', val) end # application packet capture quota percentage def application_pcaps prop_get('application-pcaps') end # application packet capture quota percentage def application_pcaps=(val) prop_set('application-pcaps', val) end # debug filter packet capture quota percentage def debug_filter_pcaps prop_get('debug-filter-pcaps') end # debug filter packet capture quota percentage def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # data filter packet capture quota percentage def dlp_logs prop_get('dlp-logs') end # data filter packet capture quota percentage def dlp_logs=(val) prop_set('dlp-logs', val) end end # class MgmtCard def mgmt_card @subclasses['mgmt-card'] ||= MgmtCard.new(parent_instance: self, create_children: @create_children) end @props={} end # class ChassisQuota def chassis_quota @subclasses['chassis-quota'] ||= ChassisQuota.new(parent_instance: self, create_children: @create_children) end class ChassisLogExpirationPeriod < ConfigClass def has_multiple_values? false end def _section :'chassis-log-expiration-period' end class LogCard < ConfigClass def has_multiple_values? false end def _section :'log-card' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for traffic logs"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat logs"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for decryption logs"}, "trsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for urlsum logs"}, "thsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for thsum logs"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for desum logs"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlytrsum logs"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailytrsum logs"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklytrsum logs"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlythsum logs"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailythsum logs"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklythsum logs"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlyurlsum logs"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailyurlsum logs"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklyurlsum logs"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlydesum logs"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailydesum logs"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklydesum logs"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat-pcaps logs"}, "hipmatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hipmatch logs"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for User-ID logs"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for authentication logs"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for iptag logs"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp logs"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp summary logs"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly tunnel and gtp summary logs"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily tunnel and gtp summary logs"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly tunnel and gtp summary logs"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for globalprotect logs"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp logs"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp summary logs"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly sctp summmary logs"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily sctp summary logs"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly sctp summary logs"}} # expiration period for traffic logs def traffic prop_get('traffic') end # expiration period for traffic logs def traffic=(val) prop_set('traffic', val) end # expiration period for threat logs def threat prop_get('threat') end # expiration period for threat logs def threat=(val) prop_set('threat', val) end # expiration period for decryption logs def decryption prop_get('decryption') end # expiration period for decryption logs def decryption=(val) prop_set('decryption', val) end # expiration period for trsum logs def trsum prop_get('trsum') end # expiration period for trsum logs def trsum=(val) prop_set('trsum', val) end # expiration period for urlsum logs def urlsum prop_get('urlsum') end # expiration period for urlsum logs def urlsum=(val) prop_set('urlsum', val) end # expiration period for thsum logs def thsum prop_get('thsum') end # expiration period for thsum logs def thsum=(val) prop_set('thsum', val) end # expiration period for desum logs def desum prop_get('desum') end # expiration period for desum logs def desum=(val) prop_set('desum', val) end # expiration period for hourlytrsum logs def hourlytrsum prop_get('hourlytrsum') end # expiration period for hourlytrsum logs def hourlytrsum=(val) prop_set('hourlytrsum', val) end # expiration period for dailytrsum logs def dailytrsum prop_get('dailytrsum') end # expiration period for dailytrsum logs def dailytrsum=(val) prop_set('dailytrsum', val) end # expiration period for weeklytrsum logs def weeklytrsum prop_get('weeklytrsum') end # expiration period for weeklytrsum logs def weeklytrsum=(val) prop_set('weeklytrsum', val) end # expiration period for hourlythsum logs def hourlythsum prop_get('hourlythsum') end # expiration period for hourlythsum logs def hourlythsum=(val) prop_set('hourlythsum', val) end # expiration period for dailythsum logs def dailythsum prop_get('dailythsum') end # expiration period for dailythsum logs def dailythsum=(val) prop_set('dailythsum', val) end # expiration period for weeklythsum logs def weeklythsum prop_get('weeklythsum') end # expiration period for weeklythsum logs def weeklythsum=(val) prop_set('weeklythsum', val) end # expiration period for hourlyurlsum logs def hourlyurlsum prop_get('hourlyurlsum') end # expiration period for hourlyurlsum logs def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # expiration period for dailyurlsum logs def dailyurlsum prop_get('dailyurlsum') end # expiration period for dailyurlsum logs def dailyurlsum=(val) prop_set('dailyurlsum', val) end # expiration period for weeklyurlsum logs def weeklyurlsum prop_get('weeklyurlsum') end # expiration period for weeklyurlsum logs def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # expiration period for hourlydesum logs def hourlydesum prop_get('hourlydesum') end # expiration period for hourlydesum logs def hourlydesum=(val) prop_set('hourlydesum', val) end # expiration period for dailydesum logs def dailydesum prop_get('dailydesum') end # expiration period for dailydesum logs def dailydesum=(val) prop_set('dailydesum', val) end # expiration period for weeklydesum logs def weeklydesum prop_get('weeklydesum') end # expiration period for weeklydesum logs def weeklydesum=(val) prop_set('weeklydesum', val) end # expiration period for threat-pcaps logs def threat_pcaps prop_get('threat-pcaps') end # expiration period for threat-pcaps logs def threat_pcaps=(val) prop_set('threat-pcaps', val) end # expiration period for hipmatch logs def hipmatch prop_get('hipmatch') end # expiration period for hipmatch logs def hipmatch=(val) prop_set('hipmatch', val) end # expiration period for User-ID logs def userid prop_get('userid') end # expiration period for User-ID logs def userid=(val) prop_set('userid', val) end # expiration period for authentication logs def auth prop_get('auth') end # expiration period for authentication logs def auth=(val) prop_set('auth', val) end # expiration period for iptag logs def iptag prop_get('iptag') end # expiration period for iptag logs def iptag=(val) prop_set('iptag', val) end # expiration period for tunnel and gtp logs def gtp prop_get('gtp') end # expiration period for tunnel and gtp logs def gtp=(val) prop_set('gtp', val) end # expiration period for tunnel and gtp summary logs def gtpsum prop_get('gtpsum') end # expiration period for tunnel and gtp summary logs def gtpsum=(val) prop_set('gtpsum', val) end # expiration period for hourly tunnel and gtp summary logs def hourlygtpsum prop_get('hourlygtpsum') end # expiration period for hourly tunnel and gtp summary logs def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # expiration period for daily tunnel and gtp summary logs def dailygtpsum prop_get('dailygtpsum') end # expiration period for daily tunnel and gtp summary logs def dailygtpsum=(val) prop_set('dailygtpsum', val) end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum prop_get('weeklygtpsum') end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # expiration period for globalprotect logs def globalprotect prop_get('globalprotect') end # expiration period for globalprotect logs def globalprotect=(val) prop_set('globalprotect', val) end # expiration period for sctp logs def sctp prop_get('sctp') end # expiration period for sctp logs def sctp=(val) prop_set('sctp', val) end # expiration period for sctp summary logs def sctpsum prop_get('sctpsum') end # expiration period for sctp summary logs def sctpsum=(val) prop_set('sctpsum', val) end # expiration period for hourly sctp summmary logs def hourlysctpsum prop_get('hourlysctpsum') end # expiration period for hourly sctp summmary logs def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # expiration period for daily sctp summary logs def dailysctpsum prop_get('dailysctpsum') end # expiration period for daily sctp summary logs def dailysctpsum=(val) prop_set('dailysctpsum', val) end # expiration period for weekly sctp summary logs def weeklysctpsum prop_get('weeklysctpsum') end # expiration period for weekly sctp summary logs def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end end # class LogCard def log_card @subclasses['log-card'] ||= LogCard.new(parent_instance: self, create_children: @create_children) end class MgmtCard < ConfigClass def has_multiple_values? false end def _section :'mgmt-card' end @props={"config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for config logs"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for system logs"}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for alarm logs"}, "appstat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for appstat logs"}, "hip-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hip-reports logs"}, "application-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for application-pcaps logs"}, "debug-filter-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for debug-filter-pcaps logs"}, "dlp-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dlp-logs"}} # expiration period for config logs def config prop_get('config') end # expiration period for config logs def config=(val) prop_set('config', val) end # expiration period for system logs def system prop_get('system') end # expiration period for system logs def system=(val) prop_set('system', val) end # expiration period for alarm logs def alarm prop_get('alarm') end # expiration period for alarm logs def alarm=(val) prop_set('alarm', val) end # expiration period for appstat logs def appstat prop_get('appstat') end # expiration period for appstat logs def appstat=(val) prop_set('appstat', val) end # expiration period for hip-reports logs def hip_reports prop_get('hip-reports') end # expiration period for hip-reports logs def hip_reports=(val) prop_set('hip-reports', val) end # expiration period for application-pcaps logs def application_pcaps prop_get('application-pcaps') end # expiration period for application-pcaps logs def application_pcaps=(val) prop_set('application-pcaps', val) end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps prop_get('debug-filter-pcaps') end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # expiration period for dlp-logs def dlp_logs prop_get('dlp-logs') end # expiration period for dlp-logs def dlp_logs=(val) prop_set('dlp-logs', val) end end # class MgmtCard def mgmt_card @subclasses['mgmt-card'] ||= MgmtCard.new(parent_instance: self, create_children: @create_children) end @props={} end # class ChassisLogExpirationPeriod def chassis_log_expiration_period @subclasses['chassis-log-expiration-period'] ||= ChassisLogExpirationPeriod.new(parent_instance: self, create_children: @create_children) end class LogExpirationPeriod < ConfigClass def has_multiple_values? false end def _section :'log-expiration-period' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for traffic logs"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat logs"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for decryption logs"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for config logs"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for system logs"}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for alarm logs"}, "appstat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for appstat logs"}, "trsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs"}, "thsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for urlsum logs"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for desum logs"}, "hipmatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hipmatch logs"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlytrsum logs"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailytrsum logs"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklytrsum logs"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlythsum logs"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailythsum logs"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklythsum logs"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlyurlsum logs"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailyurlsum logs"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklyurlsum logs"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat-pcaps logs"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp logs"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp summary logs"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly tunnel and gtp summmary logs"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily tunnel and gtp summary logs"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly tunnel and gtp summary logs"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlydesum logs"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailydesum logs"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklydesum logs"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp logs"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp summary logs"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly sctp summmary logs"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily sctp summary logs"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly sctp summary logs"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for User-ID logs"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for iptag logs"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for authentication logs"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for globalprotect logs"}, "dlp-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dlp-logs logs"}, "application-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for application-pcaps logs"}, "debug-filter-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for debug-filter-pcaps logs"}, "hip-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hip-reports logs"}} # expiration period for traffic logs def traffic prop_get('traffic') end # expiration period for traffic logs def traffic=(val) prop_set('traffic', val) end # expiration period for threat logs def threat prop_get('threat') end # expiration period for threat logs def threat=(val) prop_set('threat', val) end # expiration period for decryption logs def decryption prop_get('decryption') end # expiration period for decryption logs def decryption=(val) prop_set('decryption', val) end # expiration period for config logs def config prop_get('config') end # expiration period for config logs def config=(val) prop_set('config', val) end # expiration period for system logs def system prop_get('system') end # expiration period for system logs def system=(val) prop_set('system', val) end # expiration period for alarm logs def alarm prop_get('alarm') end # expiration period for alarm logs def alarm=(val) prop_set('alarm', val) end # expiration period for appstat logs def appstat prop_get('appstat') end # expiration period for appstat logs def appstat=(val) prop_set('appstat', val) end # expiration period for trsum logs def trsum prop_get('trsum') end # expiration period for trsum logs def trsum=(val) prop_set('trsum', val) end # expiration period for trsum logs def thsum prop_get('thsum') end # expiration period for trsum logs def thsum=(val) prop_set('thsum', val) end # expiration period for urlsum logs def urlsum prop_get('urlsum') end # expiration period for urlsum logs def urlsum=(val) prop_set('urlsum', val) end # expiration period for desum logs def desum prop_get('desum') end # expiration period for desum logs def desum=(val) prop_set('desum', val) end # expiration period for hipmatch logs def hipmatch prop_get('hipmatch') end # expiration period for hipmatch logs def hipmatch=(val) prop_set('hipmatch', val) end # expiration period for hourlytrsum logs def hourlytrsum prop_get('hourlytrsum') end # expiration period for hourlytrsum logs def hourlytrsum=(val) prop_set('hourlytrsum', val) end # expiration period for dailytrsum logs def dailytrsum prop_get('dailytrsum') end # expiration period for dailytrsum logs def dailytrsum=(val) prop_set('dailytrsum', val) end # expiration period for weeklytrsum logs def weeklytrsum prop_get('weeklytrsum') end # expiration period for weeklytrsum logs def weeklytrsum=(val) prop_set('weeklytrsum', val) end # expiration period for hourlythsum logs def hourlythsum prop_get('hourlythsum') end # expiration period for hourlythsum logs def hourlythsum=(val) prop_set('hourlythsum', val) end # expiration period for dailythsum logs def dailythsum prop_get('dailythsum') end # expiration period for dailythsum logs def dailythsum=(val) prop_set('dailythsum', val) end # expiration period for weeklythsum logs def weeklythsum prop_get('weeklythsum') end # expiration period for weeklythsum logs def weeklythsum=(val) prop_set('weeklythsum', val) end # expiration period for hourlyurlsum logs def hourlyurlsum prop_get('hourlyurlsum') end # expiration period for hourlyurlsum logs def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # expiration period for dailyurlsum logs def dailyurlsum prop_get('dailyurlsum') end # expiration period for dailyurlsum logs def dailyurlsum=(val) prop_set('dailyurlsum', val) end # expiration period for weeklyurlsum logs def weeklyurlsum prop_get('weeklyurlsum') end # expiration period for weeklyurlsum logs def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # expiration period for threat-pcaps logs def threat_pcaps prop_get('threat-pcaps') end # expiration period for threat-pcaps logs def threat_pcaps=(val) prop_set('threat-pcaps', val) end # expiration period for tunnel and gtp logs def gtp prop_get('gtp') end # expiration period for tunnel and gtp logs def gtp=(val) prop_set('gtp', val) end # expiration period for tunnel and gtp summary logs def gtpsum prop_get('gtpsum') end # expiration period for tunnel and gtp summary logs def gtpsum=(val) prop_set('gtpsum', val) end # expiration period for hourly tunnel and gtp summmary logs def hourlygtpsum prop_get('hourlygtpsum') end # expiration period for hourly tunnel and gtp summmary logs def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # expiration period for daily tunnel and gtp summary logs def dailygtpsum prop_get('dailygtpsum') end # expiration period for daily tunnel and gtp summary logs def dailygtpsum=(val) prop_set('dailygtpsum', val) end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum prop_get('weeklygtpsum') end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # expiration period for hourlydesum logs def hourlydesum prop_get('hourlydesum') end # expiration period for hourlydesum logs def hourlydesum=(val) prop_set('hourlydesum', val) end # expiration period for dailydesum logs def dailydesum prop_get('dailydesum') end # expiration period for dailydesum logs def dailydesum=(val) prop_set('dailydesum', val) end # expiration period for weeklydesum logs def weeklydesum prop_get('weeklydesum') end # expiration period for weeklydesum logs def weeklydesum=(val) prop_set('weeklydesum', val) end # expiration period for sctp logs def sctp prop_get('sctp') end # expiration period for sctp logs def sctp=(val) prop_set('sctp', val) end # expiration period for sctp summary logs def sctpsum prop_get('sctpsum') end # expiration period for sctp summary logs def sctpsum=(val) prop_set('sctpsum', val) end # expiration period for hourly sctp summmary logs def hourlysctpsum prop_get('hourlysctpsum') end # expiration period for hourly sctp summmary logs def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # expiration period for daily sctp summary logs def dailysctpsum prop_get('dailysctpsum') end # expiration period for daily sctp summary logs def dailysctpsum=(val) prop_set('dailysctpsum', val) end # expiration period for weekly sctp summary logs def weeklysctpsum prop_get('weeklysctpsum') end # expiration period for weekly sctp summary logs def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end # expiration period for User-ID logs def userid prop_get('userid') end # expiration period for User-ID logs def userid=(val) prop_set('userid', val) end # expiration period for iptag logs def iptag prop_get('iptag') end # expiration period for iptag logs def iptag=(val) prop_set('iptag', val) end # expiration period for authentication logs def auth prop_get('auth') end # expiration period for authentication logs def auth=(val) prop_set('auth', val) end # expiration period for globalprotect logs def globalprotect prop_get('globalprotect') end # expiration period for globalprotect logs def globalprotect=(val) prop_set('globalprotect', val) end # expiration period for dlp-logs logs def dlp_logs prop_get('dlp-logs') end # expiration period for dlp-logs logs def dlp_logs=(val) prop_set('dlp-logs', val) end # expiration period for application-pcaps logs def application_pcaps prop_get('application-pcaps') end # expiration period for application-pcaps logs def application_pcaps=(val) prop_set('application-pcaps', val) end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps prop_get('debug-filter-pcaps') end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # expiration period for hip-reports logs def hip_reports prop_get('hip-reports') end # expiration period for hip-reports logs def hip_reports=(val) prop_set('hip-reports', val) end end # class LogExpirationPeriod def log_expiration_period @subclasses['log-expiration-period'] ||= LogExpirationPeriod.new(parent_instance: self, create_children: @create_children) end class DiskQuota < ConfigClass def has_multiple_values? false end def _section :'disk-quota' end @props={"traffic"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic logs quota percentage"}, "threat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat logs quota percentage"}, "config"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"configuration logs quota percentage"}, "system"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"system logs quota percentage"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"globalprotect logs quota percentage"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption summary quota percentage"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption logs quota percentage"}, "alarm"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"alarm logs quota percentage"}, "appstat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application statistics quota percentage"}, "trsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic summary quota percentage"}, "thsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat summary quota percentage"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"url summary quota percentage"}, "hipmatch"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hip match quota percentage"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly traffic summary quota percentage"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily traffic summary quota percentage"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly traffic summary quota percentage"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly threat summary quota percentage"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily threat summary quota percentage"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly threat summary quota percentage"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly url summary quota percentage"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily url summary quota percentage"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly url summary quota percentage"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat packet capture quota percentage"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP logs quota percentage"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP summary quota percentage"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly Tunnel and GTP summary quota percentage"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily Tunnel and GTP summary quota percentage"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly Tunnel and GTP summary quota percentage"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly decryption summary quota percentage"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily decryption summary quota percentage"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly decryption summary quota percentage"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP logs quota percentage"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP summary quota percentage"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly SCTP summary quota percentage"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily SCTP summary quota percentage"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly SCTP summary quota percentage"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"User ID logs quota percentage"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Authentication logs quota percentage"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"IP Tag logs quota percentage"}, "dlp-logs"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"DLP log data quota percentage"}, "application-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application packet capture quota percentage"}, "debug-filter-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"debug filter packet capture quota percentage"}, "hip-reports"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"host information profile quota percentage"}} # traffic logs quota percentage def traffic prop_get('traffic') end # traffic logs quota percentage def traffic=(val) prop_set('traffic', val) end # threat logs quota percentage def threat prop_get('threat') end # threat logs quota percentage def threat=(val) prop_set('threat', val) end # configuration logs quota percentage def config prop_get('config') end # configuration logs quota percentage def config=(val) prop_set('config', val) end # system logs quota percentage def system prop_get('system') end # system logs quota percentage def system=(val) prop_set('system', val) end # globalprotect logs quota percentage def globalprotect prop_get('globalprotect') end # globalprotect logs quota percentage def globalprotect=(val) prop_set('globalprotect', val) end # decryption summary quota percentage def desum prop_get('desum') end # decryption summary quota percentage def desum=(val) prop_set('desum', val) end # decryption logs quota percentage def decryption prop_get('decryption') end # decryption logs quota percentage def decryption=(val) prop_set('decryption', val) end # alarm logs quota percentage def alarm prop_get('alarm') end # alarm logs quota percentage def alarm=(val) prop_set('alarm', val) end # application statistics quota percentage def appstat prop_get('appstat') end # application statistics quota percentage def appstat=(val) prop_set('appstat', val) end # traffic summary quota percentage def trsum prop_get('trsum') end # traffic summary quota percentage def trsum=(val) prop_set('trsum', val) end # threat summary quota percentage def thsum prop_get('thsum') end # threat summary quota percentage def thsum=(val) prop_set('thsum', val) end # url summary quota percentage def urlsum prop_get('urlsum') end # url summary quota percentage def urlsum=(val) prop_set('urlsum', val) end # Hip match quota percentage def hipmatch prop_get('hipmatch') end # Hip match quota percentage def hipmatch=(val) prop_set('hipmatch', val) end # Hourly traffic summary quota percentage def hourlytrsum prop_get('hourlytrsum') end # Hourly traffic summary quota percentage def hourlytrsum=(val) prop_set('hourlytrsum', val) end # Daily traffic summary quota percentage def dailytrsum prop_get('dailytrsum') end # Daily traffic summary quota percentage def dailytrsum=(val) prop_set('dailytrsum', val) end # Weekly traffic summary quota percentage def weeklytrsum prop_get('weeklytrsum') end # Weekly traffic summary quota percentage def weeklytrsum=(val) prop_set('weeklytrsum', val) end # Hourly threat summary quota percentage def hourlythsum prop_get('hourlythsum') end # Hourly threat summary quota percentage def hourlythsum=(val) prop_set('hourlythsum', val) end # Daily threat summary quota percentage def dailythsum prop_get('dailythsum') end # Daily threat summary quota percentage def dailythsum=(val) prop_set('dailythsum', val) end # Weekly threat summary quota percentage def weeklythsum prop_get('weeklythsum') end # Weekly threat summary quota percentage def weeklythsum=(val) prop_set('weeklythsum', val) end # Hourly url summary quota percentage def hourlyurlsum prop_get('hourlyurlsum') end # Hourly url summary quota percentage def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # Daily url summary quota percentage def dailyurlsum prop_get('dailyurlsum') end # Daily url summary quota percentage def dailyurlsum=(val) prop_set('dailyurlsum', val) end # Weekly url summary quota percentage def weeklyurlsum prop_get('weeklyurlsum') end # Weekly url summary quota percentage def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # threat packet capture quota percentage def threat_pcaps prop_get('threat-pcaps') end # threat packet capture quota percentage def threat_pcaps=(val) prop_set('threat-pcaps', val) end # Tunnel and GTP logs quota percentage def gtp prop_get('gtp') end # Tunnel and GTP logs quota percentage def gtp=(val) prop_set('gtp', val) end # Tunnel and GTP summary quota percentage def gtpsum prop_get('gtpsum') end # Tunnel and GTP summary quota percentage def gtpsum=(val) prop_set('gtpsum', val) end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum prop_get('hourlygtpsum') end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # Daily Tunnel and GTP summary quota percentage def dailygtpsum prop_get('dailygtpsum') end # Daily Tunnel and GTP summary quota percentage def dailygtpsum=(val) prop_set('dailygtpsum', val) end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum prop_get('weeklygtpsum') end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # Hourly decryption summary quota percentage def hourlydesum prop_get('hourlydesum') end # Hourly decryption summary quota percentage def hourlydesum=(val) prop_set('hourlydesum', val) end # Daily decryption summary quota percentage def dailydesum prop_get('dailydesum') end # Daily decryption summary quota percentage def dailydesum=(val) prop_set('dailydesum', val) end # Weekly decryption summary quota percentage def weeklydesum prop_get('weeklydesum') end # Weekly decryption summary quota percentage def weeklydesum=(val) prop_set('weeklydesum', val) end # SCTP logs quota percentage def sctp prop_get('sctp') end # SCTP logs quota percentage def sctp=(val) prop_set('sctp', val) end # SCTP summary quota percentage def sctpsum prop_get('sctpsum') end # SCTP summary quota percentage def sctpsum=(val) prop_set('sctpsum', val) end # Hourly SCTP summary quota percentage def hourlysctpsum prop_get('hourlysctpsum') end # Hourly SCTP summary quota percentage def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # Daily SCTP summary quota percentage def dailysctpsum prop_get('dailysctpsum') end # Daily SCTP summary quota percentage def dailysctpsum=(val) prop_set('dailysctpsum', val) end # Weekly SCTP summary quota percentage def weeklysctpsum prop_get('weeklysctpsum') end # Weekly SCTP summary quota percentage def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end # User ID logs quota percentage def userid prop_get('userid') end # User ID logs quota percentage def userid=(val) prop_set('userid', val) end # Authentication logs quota percentage def auth prop_get('auth') end # Authentication logs quota percentage def auth=(val) prop_set('auth', val) end # IP Tag logs quota percentage def iptag prop_get('iptag') end # IP Tag logs quota percentage def iptag=(val) prop_set('iptag', val) end # DLP log data quota percentage def dlp_logs prop_get('dlp-logs') end # DLP log data quota percentage def dlp_logs=(val) prop_set('dlp-logs', val) end # application packet capture quota percentage def application_pcaps prop_get('application-pcaps') end # application packet capture quota percentage def application_pcaps=(val) prop_set('application-pcaps', val) end # debug filter packet capture quota percentage def debug_filter_pcaps prop_get('debug-filter-pcaps') end # debug filter packet capture quota percentage def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # host information profile quota percentage def hip_reports prop_get('hip-reports') end # host information profile quota percentage def hip_reports=(val) prop_set('hip-reports', val) end end # class DiskQuota def disk_quota @subclasses['disk-quota'] ||= DiskQuota.new(parent_instance: self, create_children: @create_children) end @props={} end # class QuotaSettings def quota_settings @subclasses['quota-settings'] ||= QuotaSettings.new(parent_instance: self, create_children: @create_children) end class DisablePredefinedReports < XML::ConfigClass def has_multiple_values? true end def _section :'disable-predefined-reports' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"report element", "autocomplete"=>"yes", "memberof"=>["##/predefined/reports/entry/@name"]}} # report element def member prop_get('member') end # report element def member=(val) prop_set('member', val) end end # class DisablePredefinedReports def disable_predefined_reports if @create_children @subclasses['disable-predefined-reports'] ||= DisablePredefinedReports.new(parent_instance: self, create_children: @create_children) else DisablePredefinedReports.new(parent_instance: self) end end class DisablePredefinedCorrelationObjs < XML::ConfigClass def has_multiple_values? true end def _section :'disable-predefined-correlation-objs' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"32", "help-string"=>"Correlation objects"}} # Correlation objects def member prop_get('member') end # Correlation objects def member=(val) prop_set('member', val) end end # class DisablePredefinedCorrelationObjs def disable_predefined_correlation_objs if @create_children @subclasses['disable-predefined-correlation-objs'] ||= DisablePredefinedCorrelationObjs.new(parent_instance: self, create_children: @create_children) else DisablePredefinedCorrelationObjs.new(parent_instance: self) end end class CommonCriteria < ConfigClass def has_multiple_values? false end def _section :'common-criteria' end class SkipConfigurationLogsFor < XML::ConfigClass def has_multiple_values? true end def _section :'skip-configuration-logs-for' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SkipConfigurationLogsFor def skip_configuration_logs_for if @create_children @subclasses['skip-configuration-logs-for'] ||= SkipConfigurationLogsFor.new(parent_instance: self, create_children: @create_children) else SkipConfigurationLogsFor.new(parent_instance: self) end end class SelfTestSchedule < ConfigClass def has_multiple_values? false end def _section :'self-test-schedule' end class Crypto < ConfigClass def has_multiple_values? false end def _section :'crypto' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class Crypto def crypto @subclasses['crypto'] ||= Crypto.new(parent_instance: self, create_children: @create_children) end class SoftwareIntegrity < ConfigClass def has_multiple_values? false end def _section :'software-integrity' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class SoftwareIntegrity def software_integrity @subclasses['software-integrity'] ||= SoftwareIntegrity.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelfTestSchedule def self_test_schedule @subclasses['self-test-schedule'] ||= SelfTestSchedule.new(parent_instance: self, create_children: @create_children) end @props={"enable-cconly-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable logging of Common-Criteria only logs"}, "enable-packet-drop-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable logging of dropped packets"}, "skip-authentication-success-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not log successful authentication"}, "skip-authentication-failure-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not log unsuccessful authentication attempts"}, "enable-tls-session-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable logging TLS sessions"}, "enable-ocsp-crl-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable CA (OCSP/CRL) Session Establishment Logging"}, "enable-ike-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable IKE session Logging"}} # Enable logging of Common-Criteria only logs def enable_cconly_logs prop_get('enable-cconly-logs') end # Enable logging of Common-Criteria only logs def enable_cconly_logs=(val) prop_set('enable-cconly-logs', val) end # Enable logging of dropped packets def enable_packet_drop_logs prop_get('enable-packet-drop-logs') end # Enable logging of dropped packets def enable_packet_drop_logs=(val) prop_set('enable-packet-drop-logs', val) end # Do not log successful authentication def skip_authentication_success_logs prop_get('skip-authentication-success-logs') end # Do not log successful authentication def skip_authentication_success_logs=(val) prop_set('skip-authentication-success-logs', val) end # Do not log unsuccessful authentication attempts def skip_authentication_failure_logs prop_get('skip-authentication-failure-logs') end # Do not log unsuccessful authentication attempts def skip_authentication_failure_logs=(val) prop_set('skip-authentication-failure-logs', val) end # Enable logging TLS sessions def enable_tls_session_logging prop_get('enable-tls-session-logging') end # Enable logging TLS sessions def enable_tls_session_logging=(val) prop_set('enable-tls-session-logging', val) end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs prop_get('enable-ocsp-crl-logs') end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs=(val) prop_set('enable-ocsp-crl-logs', val) end # Enable IKE session Logging def enable_ike_logging prop_get('enable-ike-logging') end # Enable IKE session Logging def enable_ike_logging=(val) prop_set('enable-ike-logging', val) end end # class CommonCriteria def common_criteria @subclasses['common-criteria'] ||= CommonCriteria.new(parent_instance: self, create_children: @create_children) end class Api < ConfigClass def has_multiple_values? false end def _section :'api' end class Key < ConfigClass def has_multiple_values? false end def _section :'key' end @props={"lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"api key lifetime in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"525600"}, "enum"=>[{"value"=>"0", "help-string"=>"never"}]}}} # api key lifetime in minutes def lifetime prop_get('lifetime') end # api key lifetime in minutes def lifetime=(val) prop_set('lifetime', val) end end # class Key def key @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) end @props={} end # class Api def api @subclasses['api'] ||= Api.new(parent_instance: self, create_children: @create_children) end class AdminLockout < ConfigClass def has_multiple_values? false end def _section :'admin-lockout' end @props={"failed-attempts__1"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "default"=>"10", "type"=>"rangedint", "min"=>"1", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "failed-attempts__2"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "default"=>"0", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time__3"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "default"=>"0", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}, "lockout-time__4"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "default"=>"0", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts__1 prop_get('failed-attempts__1') end # Number of failed login attempts to trigger lock-out def failed_attempts__1=(val) prop_set('failed-attempts__1', val) end # Number of failed login attempts to trigger lock-out def failed_attempts__2 prop_get('failed-attempts__2') end # Number of failed login attempts to trigger lock-out def failed_attempts__2=(val) prop_set('failed-attempts__2', val) end # Number of minutes to lock-out def lockout_time__3 prop_get('lockout-time__3') end # Number of minutes to lock-out def lockout_time__3=(val) prop_set('lockout-time__3', val) end # Number of minutes to lock-out def lockout_time__4 prop_get('lockout-time__4') end # Number of minutes to lock-out def lockout_time__4=(val) prop_set('lockout-time__4', val) end end # class AdminLockout def admin_lockout @subclasses['admin-lockout'] ||= AdminLockout.new(parent_instance: self, create_children: @create_children) end class AdminSession < ConfigClass def has_multiple_values? false end def _section :'admin-session' end @props={"max-session-count__1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"4", "prune-on"=>"non-fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"720", "prune-on"=>"non-fips-mode", "help-string"=>"Set the maximum session time (60-1499 minutes)", "regex"=>"^(([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}, "max-session-count__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=>"Set the maximum session time (0, 60-1499 minutes)", "regex"=>"^((0)|([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}} # Set the maximum number of sessions administrators are allowed def max_session_count__1 prop_get('max-session-count__1') end # Set the maximum number of sessions administrators are allowed def max_session_count__1=(val) prop_set('max-session-count__1', val) end # Set the maximum session time (60-1499 minutes) def max_session_time__2 prop_get('max-session-time__2') end # Set the maximum session time (60-1499 minutes) def max_session_time__2=(val) prop_set('max-session-time__2', val) end # Set the maximum number of sessions administrators are allowed def max_session_count__3 prop_get('max-session-count__3') end # Set the maximum number of sessions administrators are allowed def max_session_count__3=(val) prop_set('max-session-count__3', val) end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4 prop_get('max-session-time__4') end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4=(val) prop_set('max-session-time__4', val) end end # class AdminSession def admin_session @subclasses['admin-session'] ||= AdminSession.new(parent_instance: self, create_children: @create_children) end class BrowseActivityReportSetting < ConfigClass def has_multiple_values? false end def _section :'browse-activity-report-setting' end @props={"average-browse-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"300", "default"=>"60", "help-string"=>"Average time in seconds for a browse session"}, "page-load-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"20", "help-string"=>"Average time in seconds to load a URL page"}} # Average time in seconds for a browse session def average_browse_time prop_get('average-browse-time') end # Average time in seconds for a browse session def average_browse_time=(val) prop_set('average-browse-time', val) end # Average time in seconds to load a URL page def page_load_threshold prop_get('page-load-threshold') end # Average time in seconds to load a URL page def page_load_threshold=(val) prop_set('page-load-threshold', val) end end # class BrowseActivityReportSetting def browse_activity_report_setting @subclasses['browse-activity-report-setting'] ||= BrowseActivityReportSetting.new(parent_instance: self, create_children: @create_children) end class DeviceMonitoring < ConfigClass def has_multiple_values? false end def _section :'device-monitoring' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable device monitoring"}} # Enable device monitoring def enabled prop_get('enabled') end # Enable device monitoring def enabled=(val) prop_set('enabled', val) end end # class DeviceMonitoring def device_monitoring @subclasses['device-monitoring'] ||= DeviceMonitoring.new(parent_instance: self, create_children: @create_children) end class CommonCriteriaAlarmGeneration < ConfigClass def has_multiple_values? false end def _section :'common-criteria-alarm-generation' end class SecurityPolicyLimits < ConfigClass def has_multiple_values? false end def _section :'security-policy-limits' end @props={"count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295"}, "time-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"30", "max"=>"86400"}} def count prop_get('count') end def count=(val) prop_set('count', val) end def time_interval prop_get('time-interval') end def time_interval=(val) prop_set('time-interval', val) end end # class SecurityPolicyLimits def security_policy_limits @subclasses['security-policy-limits'] ||= SecurityPolicyLimits.new(parent_instance: self, create_children: @create_children) end class RuleGroupLimits < ConfigClass def has_multiple_values? false end def _section :'rule-group-limits' end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/security/rules/entry/tag/member", "##/shared/post-rulebase/security/rules/entry/tag/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295"}, "time-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"30", "max"=>"86400"}} def count prop_get('count') end def count=(val) prop_set('count', val) end def time_interval prop_get('time-interval') end def time_interval=(val) prop_set('time-interval', val) end end # class RuleGroupLimits def rule_group_limits @subclasses['rule-group-limits'] ||= RuleGroupLimits.new(parent_instance: self, create_children: @create_children) end class LogDatabasesAlarmThreshold < ConfigClass def has_multiple_values? false end def _section :'log-databases-alarm-threshold' end @props={"traffic"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "traffic logs database % full threshold value for alarm generation"}, "threat"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "threat logs database % full threshold value for alarm generation"}, "config"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "configuration logs database % full threshold value for alarm generation"}, "system"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "system logs database % full threshold value for alarm generation"}, "alarm"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "alarm logs database % full threshold value for alarm generation"}, "hipmatch"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "hipmatch logs database % full threshold value for alarm generation"}, "userid"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "User-ID logs database % full threshold value for alarm generation"}, "iptag"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "IP-TAG logs database % full threshold value for alarm generation"}, "auth"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "authentication logs database % full threshold value for alarm generation"}, "gtp"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "tunnel and gtp logs database % full threshold value for alarm generation"}, "sctp"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "SCTP logs database % full threshold value for alarm generation"}, "globalprotect"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "Globalprotect logs database % full threshold value for alarm generation"}, "decryption"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "decryption logs database % full threshold value for alarm generation"}} # traffic logs database % full threshold value for alarm generation def traffic prop_get('traffic') end # traffic logs database % full threshold value for alarm generation def traffic=(val) prop_set('traffic', val) end # threat logs database % full threshold value for alarm generation def threat prop_get('threat') end # threat logs database % full threshold value for alarm generation def threat=(val) prop_set('threat', val) end # configuration logs database % full threshold value for alarm generation def config prop_get('config') end # configuration logs database % full threshold value for alarm generation def config=(val) prop_set('config', val) end # system logs database % full threshold value for alarm generation def system prop_get('system') end # system logs database % full threshold value for alarm generation def system=(val) prop_set('system', val) end # alarm logs database % full threshold value for alarm generation def alarm prop_get('alarm') end # alarm logs database % full threshold value for alarm generation def alarm=(val) prop_set('alarm', val) end # hipmatch logs database % full threshold value for alarm generation def hipmatch prop_get('hipmatch') end # hipmatch logs database % full threshold value for alarm generation def hipmatch=(val) prop_set('hipmatch', val) end # User-ID logs database % full threshold value for alarm generation def userid prop_get('userid') end # User-ID logs database % full threshold value for alarm generation def userid=(val) prop_set('userid', val) end # IP-TAG logs database % full threshold value for alarm generation def iptag prop_get('iptag') end # IP-TAG logs database % full threshold value for alarm generation def iptag=(val) prop_set('iptag', val) end # authentication logs database % full threshold value for alarm generation def auth prop_get('auth') end # authentication logs database % full threshold value for alarm generation def auth=(val) prop_set('auth', val) end # tunnel and gtp logs database % full threshold value for alarm generation def gtp prop_get('gtp') end # tunnel and gtp logs database % full threshold value for alarm generation def gtp=(val) prop_set('gtp', val) end # SCTP logs database % full threshold value for alarm generation def sctp prop_get('sctp') end # SCTP logs database % full threshold value for alarm generation def sctp=(val) prop_set('sctp', val) end # Globalprotect logs database % full threshold value for alarm generation def globalprotect prop_get('globalprotect') end # Globalprotect logs database % full threshold value for alarm generation def globalprotect=(val) prop_set('globalprotect', val) end # decryption logs database % full threshold value for alarm generation def decryption prop_get('decryption') end # decryption logs database % full threshold value for alarm generation def decryption=(val) prop_set('decryption', val) end end # class LogDatabasesAlarmThreshold def log_databases_alarm_threshold @subclasses['log-databases-alarm-threshold'] ||= LogDatabasesAlarmThreshold.new(parent_instance: self, create_children: @create_children) end @props={"enable-alarm-generation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable CC alarms generation"}, "enable-cli-alarm-notification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable alarms notification on admin console"}, "enable-web-alarm-notification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable alarms notification on Web"}, "enable-audible-alarms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable audio sound for alarms"}, "encrypt-decrypt-fail-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=> "Encryption/Decryption failure count notification threshold"}} # Enable CC alarms generation def enable_alarm_generation prop_get('enable-alarm-generation') end # Enable CC alarms generation def enable_alarm_generation=(val) prop_set('enable-alarm-generation', val) end # Enable alarms notification on admin console def enable_cli_alarm_notification prop_get('enable-cli-alarm-notification') end # Enable alarms notification on admin console def enable_cli_alarm_notification=(val) prop_set('enable-cli-alarm-notification', val) end # Enable alarms notification on Web def enable_web_alarm_notification prop_get('enable-web-alarm-notification') end # Enable alarms notification on Web def enable_web_alarm_notification=(val) prop_set('enable-web-alarm-notification', val) end # Enable audio sound for alarms def enable_audible_alarms prop_get('enable-audible-alarms') end # Enable audio sound for alarms def enable_audible_alarms=(val) prop_set('enable-audible-alarms', val) end # Encryption/Decryption failure count notification threshold def encrypt_decrypt_fail_count prop_get('encrypt-decrypt-fail-count') end # Encryption/Decryption failure count notification threshold def encrypt_decrypt_fail_count=(val) prop_set('encrypt-decrypt-fail-count', val) end end # class CommonCriteriaAlarmGeneration def common_criteria_alarm_generation @subclasses['common-criteria-alarm-generation'] ||= CommonCriteriaAlarmGeneration.new(parent_instance: self, create_children: @create_children) end class Initcfg < ConfigClass def has_multiple_values? false end def _section :'initcfg' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={"send-hostname"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "send-client-id"=>{"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-hostname"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-domain"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}} def send_hostname prop_get('send-hostname') end def send_hostname=(val) prop_set('send-hostname', val) end def send_client_id prop_get('send-client-id') end def send_client_id=(val) prop_set('send-client-id', val) end def accept_dhcp_hostname prop_get('accept-dhcp-hostname') end def accept_dhcp_hostname=(val) prop_set('accept-dhcp-hostname', val) end def accept_dhcp_domain prop_get('accept-dhcp-domain') end def accept_dhcp_domain=(val) prop_set('accept-dhcp-domain', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "dns-primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "dns-secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes"}, "auth-key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string"}, "dgname"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "cgname"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "certificate"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "certpassphrase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "certkeyfile"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "username"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "userpassword"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "tplname"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "agent-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "hostInfo-agentId"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "hostInfo-hostName"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "public-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"(([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?){1}", "maxlen"=>"2048"}, "op-command-modes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "vm-auth-key"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}} def ip_address prop_get('ip-address') end def ip_address=(val) prop_set('ip-address', val) end def netmask prop_get('netmask') end def netmask=(val) prop_set('netmask', val) end def default_gateway prop_get('default-gateway') end def default_gateway=(val) prop_set('default-gateway', val) end def panorama_server prop_get('panorama-server') end def panorama_server=(val) prop_set('panorama-server', val) end def panorama_server_2 prop_get('panorama-server-2') end def panorama_server_2=(val) prop_set('panorama-server-2', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def dns_primary prop_get('dns-primary') end def dns_primary=(val) prop_set('dns-primary', val) end def dns_secondary prop_get('dns-secondary') end def dns_secondary=(val) prop_set('dns-secondary', val) end def ipv6_address prop_get('ipv6-address') end def ipv6_address=(val) prop_set('ipv6-address', val) end def ipv6_default_gateway prop_get('ipv6-default-gateway') end def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def auth_key prop_get('auth-key') end def auth_key=(val) prop_set('auth-key', val) end def dgname prop_get('dgname') end def dgname=(val) prop_set('dgname', val) end def cgname prop_get('cgname') end def cgname=(val) prop_set('cgname', val) end def certificate prop_get('certificate') end def certificate=(val) prop_set('certificate', val) end def certpassphrase prop_get('certpassphrase') end def certpassphrase=(val) prop_set('certpassphrase', val) end def certkeyfile prop_get('certkeyfile') end def certkeyfile=(val) prop_set('certkeyfile', val) end def username prop_get('username') end def username=(val) prop_set('username', val) end def userpassword prop_get('userpassword') end def userpassword=(val) prop_set('userpassword', val) end def tplname prop_get('tplname') end def tplname=(val) prop_set('tplname', val) end def agent_name prop_get('agent-name') end def agent_name=(val) prop_set('agent-name', val) end def hostInfo_agentId prop_get('hostInfo-agentId') end def hostInfo_agentId=(val) prop_set('hostInfo-agentId', val) end def hostInfo_hostName prop_get('hostInfo-hostName') end def hostInfo_hostName=(val) prop_set('hostInfo-hostName', val) end def public_key prop_get('public-key') end def public_key=(val) prop_set('public-key', val) end def op_command_modes prop_get('op-command-modes') end def op_command_modes=(val) prop_set('op-command-modes', val) end def vm_auth_key prop_get('vm-auth-key') end def vm_auth_key=(val) prop_set('vm-auth-key', val) end end # class Initcfg def initcfg @subclasses['initcfg'] ||= Initcfg.new(parent_instance: self, create_children: @create_children) end @props={"idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"default administrative session idle timeout in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"1440", "help-string"=>"minutes"}, "enum"=>[{"value"=>"0", "help-string"=>"never timeout"}]}}, "appusage-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"60", "max"=>"365", "help-string"=>"application usage data storage time in days"}, "hostname-type-in-syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"FQDN", "help-string"=>"Choose type to send in hostname field in syslog header", "enum"=> [{"value"=>"none", "help-string"=>"Do not send hostname in syslog header"}, {"value"=>"FQDN", "help-string"=>"Send FQDN field in header"}, {"value"=>"hostname", "help-string"=> "Send hostname in header if available otherwise send '-' "}, {"value"=>"ipv4-address", "help-string"=> "Send IPv4 address in header if available otherwise send '-'"}, {"value"=>"ipv6-address", "help-string"=> "Send IPv6 address in header if available otherwise send '-'"}]}, "report-run-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):00", "minlen"=>"5", "maxlen"=>"5", "default"=>"02:00", "help-string"=> "Time of day to run the scheduled reports hh:mm (e.g. 23:00)"}, "report-expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"Expiration-period for reports (in days)"}, "threat-vault-access"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn threat-vault access on or off"}, "support-utf8-for-log-output"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Support output log in UTF-8"}, "auto-acquire-commit-lock"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Automatically add a commit lock when modifying configuration"}, "disable-commit-recovery"=> {"node-type"=>"element", "default"=>"no", "optional"=>"yes", "type"=>"bool", "help-string"=>"Disable automated commit recovery feature"}, "commit-recovery-retry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"1", "help-string"=>"Set number of attempts allowed for checking connectivity"}, "commit-recovery-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"30", "default"=>"10", "help-string"=>"Set a timeout interval between retries"}, "rule-hit-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/Disable Policy rule hit-count feature"}, "rule-require-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require Tag on policies"}, "rule-require-description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require description on policies"}, "rule-fail-commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Fail commit if policies have no tag/description"}, "rule-require-audit-comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require audit comment on policies"}, "rule-audit-comment-regex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"Audit Comment Regular Expression"}, "appusage-policy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/Disable Policy Application usage feature", "prune-on-sdb"=>"cfg.vm-license-type=vm50l"}, "canonicalize-block-allow-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable/Disable canonicalization before matching url to block/allow list"}, "enable-high-speed-log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable higher forwarding speeds when logs are being forwarding"}, "traffic-stop-on-logdb-full"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Stop traffic if logdb is full with unexported logs"}, "enable-log-high-dp-load"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Issue a progressive system log if one or more dataplane CPUs are under severe load"}, "enable-certificate-expiration-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Check for expired certificates and stop using them"}, "max-rows-in-csv-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"65535", "help-string"=>"maximum number of rows in exported csv files"}, "max-rows-in-pdf-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"5000", "help-string"=>"maximum number of rows in user activity report"}, "max-audit-versions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"100", "help-string"=>"maximum number of audited versions of config to preserve"}, "panorama-tcp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"240", "help-string"=>"Receive timeout for TCP connection to Panorama"}, "panorama-tcp-send-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"240", "help-string"=>"Send timeout for TCP connection to Panorama"}, "panorama-ssl-send-retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "help-string"=>"Retry count for SSL sends to Panorama"}} # default administrative session idle timeout in minutes def idle_timeout prop_get('idle-timeout') end # default administrative session idle timeout in minutes def idle_timeout=(val) prop_set('idle-timeout', val) end # application usage data storage time in days def appusage_lifetime prop_get('appusage-lifetime') end # application usage data storage time in days def appusage_lifetime=(val) prop_set('appusage-lifetime', val) end # Choose type to send in hostname field in syslog header def hostname_type_in_syslog prop_get('hostname-type-in-syslog') end # Choose type to send in hostname field in syslog header def hostname_type_in_syslog=(val) prop_set('hostname-type-in-syslog', val) end # Time of day to run the scheduled reports hh:mm (e.g. 23:00) def report_run_time prop_get('report-run-time') end # Time of day to run the scheduled reports hh:mm (e.g. 23:00) def report_run_time=(val) prop_set('report-run-time', val) end # Expiration-period for reports (in days) def report_expiration_period prop_get('report-expiration-period') end # Expiration-period for reports (in days) def report_expiration_period=(val) prop_set('report-expiration-period', val) end # Turn threat-vault access on or off def threat_vault_access prop_get('threat-vault-access') end # Turn threat-vault access on or off def threat_vault_access=(val) prop_set('threat-vault-access', val) end # Support output log in UTF-8 def support_utf8_for_log_output prop_get('support-utf8-for-log-output') end # Support output log in UTF-8 def support_utf8_for_log_output=(val) prop_set('support-utf8-for-log-output', val) end # Automatically add a commit lock when modifying configuration def auto_acquire_commit_lock prop_get('auto-acquire-commit-lock') end # Automatically add a commit lock when modifying configuration def auto_acquire_commit_lock=(val) prop_set('auto-acquire-commit-lock', val) end # Disable automated commit recovery feature def disable_commit_recovery prop_get('disable-commit-recovery') end # Disable automated commit recovery feature def disable_commit_recovery=(val) prop_set('disable-commit-recovery', val) end # Set number of attempts allowed for checking connectivity def commit_recovery_retry prop_get('commit-recovery-retry') end # Set number of attempts allowed for checking connectivity def commit_recovery_retry=(val) prop_set('commit-recovery-retry', val) end # Set a timeout interval between retries def commit_recovery_timeout prop_get('commit-recovery-timeout') end # Set a timeout interval between retries def commit_recovery_timeout=(val) prop_set('commit-recovery-timeout', val) end # Enable/Disable Policy rule hit-count feature def rule_hit_count prop_get('rule-hit-count') end # Enable/Disable Policy rule hit-count feature def rule_hit_count=(val) prop_set('rule-hit-count', val) end # Require Tag on policies def rule_require_tag prop_get('rule-require-tag') end # Require Tag on policies def rule_require_tag=(val) prop_set('rule-require-tag', val) end # Require description on policies def rule_require_description prop_get('rule-require-description') end # Require description on policies def rule_require_description=(val) prop_set('rule-require-description', val) end # Fail commit if policies have no tag/description def rule_fail_commit prop_get('rule-fail-commit') end # Fail commit if policies have no tag/description def rule_fail_commit=(val) prop_set('rule-fail-commit', val) end # Require audit comment on policies def rule_require_audit_comment prop_get('rule-require-audit-comment') end # Require audit comment on policies def rule_require_audit_comment=(val) prop_set('rule-require-audit-comment', val) end # Audit Comment Regular Expression def rule_audit_comment_regex prop_get('rule-audit-comment-regex') end # Audit Comment Regular Expression def rule_audit_comment_regex=(val) prop_set('rule-audit-comment-regex', val) end # Enable/Disable Policy Application usage feature def appusage_policy prop_get('appusage-policy') end # Enable/Disable Policy Application usage feature def appusage_policy=(val) prop_set('appusage-policy', val) end # Enable/Disable canonicalization before matching url to block/allow list def canonicalize_block_allow_list prop_get('canonicalize-block-allow-list') end # Enable/Disable canonicalization before matching url to block/allow list def canonicalize_block_allow_list=(val) prop_set('canonicalize-block-allow-list', val) end # Enable higher forwarding speeds when logs are being forwarding def enable_high_speed_log_forwarding prop_get('enable-high-speed-log-forwarding') end # Enable higher forwarding speeds when logs are being forwarding def enable_high_speed_log_forwarding=(val) prop_set('enable-high-speed-log-forwarding', val) end # Stop traffic if logdb is full with unexported logs def traffic_stop_on_logdb_full prop_get('traffic-stop-on-logdb-full') end # Stop traffic if logdb is full with unexported logs def traffic_stop_on_logdb_full=(val) prop_set('traffic-stop-on-logdb-full', val) end # Issue a progressive system log if one or more dataplane CPUs are under severe load def enable_log_high_dp_load prop_get('enable-log-high-dp-load') end # Issue a progressive system log if one or more dataplane CPUs are under severe load def enable_log_high_dp_load=(val) prop_set('enable-log-high-dp-load', val) end # Check for expired certificates and stop using them def enable_certificate_expiration_check prop_get('enable-certificate-expiration-check') end # Check for expired certificates and stop using them def enable_certificate_expiration_check=(val) prop_set('enable-certificate-expiration-check', val) end # maximum number of rows in exported csv files def max_rows_in_csv_export prop_get('max-rows-in-csv-export') end # maximum number of rows in exported csv files def max_rows_in_csv_export=(val) prop_set('max-rows-in-csv-export', val) end # maximum number of rows in user activity report def max_rows_in_pdf_report prop_get('max-rows-in-pdf-report') end # maximum number of rows in user activity report def max_rows_in_pdf_report=(val) prop_set('max-rows-in-pdf-report', val) end # maximum number of audited versions of config to preserve def max_audit_versions prop_get('max-audit-versions') end # maximum number of audited versions of config to preserve def max_audit_versions=(val) prop_set('max-audit-versions', val) end # Receive timeout for TCP connection to Panorama def panorama_tcp_receive_timeout prop_get('panorama-tcp-receive-timeout') end # Receive timeout for TCP connection to Panorama def panorama_tcp_receive_timeout=(val) prop_set('panorama-tcp-receive-timeout', val) end # Send timeout for TCP connection to Panorama def panorama_tcp_send_timeout prop_get('panorama-tcp-send-timeout') end # Send timeout for TCP connection to Panorama def panorama_tcp_send_timeout=(val) prop_set('panorama-tcp-send-timeout', val) end # Retry count for SSL sends to Panorama def panorama_ssl_send_retries prop_get('panorama-ssl-send-retries') end # Retry count for SSL sends to Panorama def panorama_ssl_send_retries=(val) prop_set('panorama-ssl-send-retries', val) end end # class Management def management @subclasses['management'] ||= Management.new(parent_instance: self, create_children: @create_children) end class Logrcvr < ConfigClass def has_multiple_values? false end def _section :'logrcvr' end @props={"container-page-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Container page timeout in secs"}} # Container page timeout in secs def container_page_timeout prop_get('container-page-timeout') end # Container page timeout in secs def container_page_timeout=(val) prop_set('container-page-timeout', val) end end # class Logrcvr def logrcvr @subclasses['logrcvr'] ||= Logrcvr.new(parent_instance: self, create_children: @create_children) end class Vpn < ConfigClass def has_multiple_values? false end def _section :'vpn' end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end @props={"cookie-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"0", "max"=>"65535", "help-string"=> "Enable cookie if the number of half opened SA is over the threshold"}, "max-half-opened-sa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"65535", "min"=>"1", "max"=>"65535", "help-string"=>"Maximum number of half opened SA"}, "certificate-cache-size"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"0", "max"=>"4000", "help-string"=> "Maximum number of certificates in cache used for http peer certificates"}} # Enable cookie if the number of half opened SA is over the threshold def cookie_threshold prop_get('cookie-threshold') end # Enable cookie if the number of half opened SA is over the threshold def cookie_threshold=(val) prop_set('cookie-threshold', val) end # Maximum number of half opened SA def max_half_opened_sa prop_get('max-half-opened-sa') end # Maximum number of half opened SA def max_half_opened_sa=(val) prop_set('max-half-opened-sa', val) end # Maximum number of certificates in cache used for http peer certificates def certificate_cache_size prop_get('certificate-cache-size') end # Maximum number of certificates in cache used for http peer certificates def certificate_cache_size=(val) prop_set('certificate-cache-size', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Vpn def vpn @subclasses['vpn'] ||= Vpn.new(parent_instance: self, create_children: @create_children) end class CustomLogo < ConfigClass def has_multiple_values? false end def _section :'custom-logo' end class LoginScreen < ConfigClass def has_multiple_values? false end def _section :'login-screen' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom login-screen page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom login-screen page(base64 encoded). def content prop_get('content') end # Upload custom login-screen page(base64 encoded). def content=(val) prop_set('content', val) end end # class LoginScreen def login_screen @subclasses['login-screen'] ||= LoginScreen.new(parent_instance: self, create_children: @create_children) end class MainUi < ConfigClass def has_multiple_values? false end def _section :'main-ui' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom main-ui page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom main-ui page(base64 encoded). def content prop_get('content') end # Upload custom main-ui page(base64 encoded). def content=(val) prop_set('content', val) end end # class MainUi def main_ui @subclasses['main-ui'] ||= MainUi.new(parent_instance: self, create_children: @create_children) end class PdfReportHeader < ConfigClass def has_multiple_values? false end def _section :'pdf-report-header' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom pdf-report-header page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom pdf-report-header page(base64 encoded). def content prop_get('content') end # Upload custom pdf-report-header page(base64 encoded). def content=(val) prop_set('content', val) end end # class PdfReportHeader def pdf_report_header @subclasses['pdf-report-header'] ||= PdfReportHeader.new(parent_instance: self, create_children: @create_children) end class PdfReportFooter < ConfigClass def has_multiple_values? false end def _section :'pdf-report-footer' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom pdf-report-footer page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom pdf-report-footer page(base64 encoded). def content prop_get('content') end # Upload custom pdf-report-footer page(base64 encoded). def content=(val) prop_set('content', val) end end # class PdfReportFooter def pdf_report_footer @subclasses['pdf-report-footer'] ||= PdfReportFooter.new(parent_instance: self, create_children: @create_children) end @props={"hide-panorama-header-background"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def hide_panorama_header_background prop_get('hide-panorama-header-background') end def hide_panorama_header_background=(val) prop_set('hide-panorama-header-background', val) end end # class CustomLogo def custom_logo @subclasses['custom-logo'] ||= CustomLogo.new(parent_instance: self, create_children: @create_children) end class Iot < ConfigClass def has_multiple_values? false end def _section :'iot' end class Edge < ConfigClass def has_multiple_values? false end def _section :'edge' end @props={"disable-device-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the edge cloud service", "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name"}}}} def disable_device_cert prop_get('disable-device-cert') end def disable_device_cert=(val) prop_set('disable-device-cert', val) end # IP address or hostname for the edge cloud service def address prop_get('address') end # IP address or hostname for the edge cloud service def address=(val) prop_set('address', val) end end # class Edge def edge @subclasses['edge'] ||= Edge.new(parent_instance: self, create_children: @create_children) end @props={} end # class Iot def iot @subclasses['iot'] ||= Iot.new(parent_instance: self, create_children: @create_children) end @props={"auto-mac-detect"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.setting.auto-mac-detect-disable=True", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Using detected VM interface MAC as PANOS interface MAC"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mobile-security-policy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "tunnel-acceleration"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"to accelerate GTP-U, GRE and VxLAN traffic"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "advance-routing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable Advanced Routing Module"}} # Using detected VM interface MAC as PANOS interface MAC def auto_mac_detect prop_get('auto-mac-detect') end # Using detected VM interface MAC as PANOS interface MAC def auto_mac_detect=(val) prop_set('auto-mac-detect', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def mobile_security_policy prop_get('mobile-security-policy') end def mobile_security_policy=(val) prop_set('mobile-security-policy', val) end # to accelerate GTP-U, GRE and VxLAN traffic def tunnel_acceleration prop_get('tunnel-acceleration') end # to accelerate GTP-U, GRE and VxLAN traffic def tunnel_acceleration=(val) prop_set('tunnel-acceleration', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end # Enable Advanced Routing Module def advance_routing prop_get('advance-routing') end # Enable Advanced Routing Module def advance_routing=(val) prop_set('advance-routing', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end class Interface < ConfigClass def has_multiple_values? false end def _section :'interface' end class Ha1 < ConfigClass def has_multiple_values? false end def _section :'ha1' end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Interface name", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=> {"prune-on-sdb"=> "cfg.platform.vm.high-availability.interface.ha1.port-disable=True"}, "enum"=> [{"value"=>"dedicated-ha1", "help-string"=>"Dedicated out of band HA1 interface for ha1"}, {"value"=>"ha1-a", "help-string"=>"Dedicated out of band HA1-A interface for ha1"}, {"value"=>"ha1-b", "help-string"=>"Dedicated out of band HA1-B interface for ha1"}, {"value"=>"aux-1", "help-string"=>"Non-dedicated out of band AUX-1 interface for ha1"}, {"value"=>"aux-2", "help-string"=>"Non-dedicated out of band AUX-2 interface for ha1"}, {"value"=>"management", "help-string"=>"Non-dedicated out of band MGT interface for ha1"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA1 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA1 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA1 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "monitor-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"3000", "help-string"=> "hold time in milliseconds to allow ha1 link flapping, default 3000"}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA1 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA1 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA1 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA1 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA1 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA1 interface def gateway=(val) prop_set('gateway', val) end # hold time in milliseconds to allow ha1 link flapping, default 3000 def monitor_hold_time prop_get('monitor-hold-time') end # hold time in milliseconds to allow ha1 link flapping, default 3000 def monitor_hold_time=(val) prop_set('monitor-hold-time', val) end end # class Ha1 def ha1 @subclasses['ha1'] ||= Ha1.new(parent_instance: self, create_children: @create_children) end class Ha1Backup < ConfigClass def has_multiple_values? false end def _section :'ha1-backup' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"dedicated-ha1", "help-string"=>"Dedicated out of band HA1 interface for ha1-backup"}, {"value"=>"ha1-a", "help-string"=>"Dedicated out of band HA1-A interface for ha1-backup"}, {"value"=>"ha1-b", "help-string"=>"Dedicated out of band HA1-B interface for ha1-backup"}, {"value"=>"aux-1", "help-string"=> "Non-dedicated out of band AUX-1 interface for ha1-backup"}, {"value"=>"aux-2", "help-string"=> "Non-dedicated out of band AUX-2 interface for ha1-backup"}, {"value"=>"management", "help-string"=> "Non-dedicated out of band MGT interface for ha1-backup"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA1 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA1 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA1 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA1 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA1 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA1 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA1 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA1 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA1 interface def gateway=(val) prop_set('gateway', val) end end # class Ha1Backup def ha1_backup @subclasses['ha1-backup'] ||= Ha1Backup.new(parent_instance: self, create_children: @create_children) end class Ha2 < ConfigClass def has_multiple_values? false end def _section :'ha2' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"dedicated-ha2", "help-string"=>"Dedicated HA2 interface"}, {"value"=>"hsci", "help-string"=> "High Speed Chassis Interconnect (HSCI) dedicated for HA2 and HA3 interfaces"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA2 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA2 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA2 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA2 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA2 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA2 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA2 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA2 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA2 interface def gateway=(val) prop_set('gateway', val) end end # class Ha2 def ha2 @subclasses['ha2'] ||= Ha2.new(parent_instance: self, create_children: @create_children) end class Ha2Backup < ConfigClass def has_multiple_values? false end def _section :'ha2-backup' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"dedicated-ha2", "help-string"=>"Dedicated HA2 interface"}, {"value"=>"hsci", "help-string"=> "High Speed Chassis Interconnect (HSCI) dedicated for HA2 and HA3 interfaces"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA2 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA2 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA2 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA2 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA2 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA2 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA2 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA2 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA2 interface def gateway=(val) prop_set('gateway', val) end end # class Ha2Backup def ha2_backup @subclasses['ha2-backup'] ||= Ha2Backup.new(parent_instance: self, create_children: @create_children) end class Ha3 < ConfigClass def has_multiple_values? false end def _section :'ha3' end @props={"port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[ha]/@name", "#myentry(template)/variable/entry[type/interface]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"hsci", "help-string"=> "High Speed Chassis Interconnect (HSCI) dedicated for HA2 and HA3 interfaces"}]}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end end # class Ha3 def ha3 @subclasses['ha3'] ||= Ha3.new(parent_instance: self, create_children: @create_children) end class Ha4 < ConfigClass def has_multiple_values? false end def _section :'ha4' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[ha]/@name", "#myentry(template)/variable/entry[type/interface]/@name"], "multi-types"=>{"string"=>{}}}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA4 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA4 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # IPv4/IPv6 address for the HA4 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA4 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA4 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA4 interface def netmask=(val) prop_set('netmask', val) end end # class Ha4 def ha4 @subclasses['ha4'] ||= Ha4.new(parent_instance: self, create_children: @create_children) end class Ha4Backup < ConfigClass def has_multiple_values? false end def _section :'ha4-backup' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[ha]/@name", "#myentry(template)/variable/entry[type/interface]/@name"], "multi-types"=>{"string"=>{}}}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA4-backup interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IPv4 netmask for the HA4-backup interface"}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # IPv4/IPv6 address for the HA4-backup interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA4-backup interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA4-backup interface def netmask prop_get('netmask') end # IPv4 netmask for the HA4-backup interface def netmask=(val) prop_set('netmask', val) end end # class Ha4Backup def ha4_backup @subclasses['ha4-backup'] ||= Ha4Backup.new(parent_instance: self, create_children: @create_children) end @props={} end # class Interface def interface @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) end class Cluster < ConfigClass def has_multiple_values? false end def _section :'cluster' end class ClusterMembers < XML::ConfigClass def has_multiple_values? true end def _section :'cluster-members' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "help-string"=>"Member device serial number"}, "ha4-ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the cluster member HA4 interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "ha4-backup-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=> "IPv4/IPv6 address for the cluster member HA4-backup interface", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "session-synchronization"=> {"node-type"=>"element", "type"=>"enum", "default"=>"enabled", "optional"=>"yes", "help-string"=> "Enable/disable session synchronization from current device to given member", "enum"=> [{"value"=>"enabled", "help-string"=>"Enable cluster session synchronization"}, {"value"=>"disabled", "help-string"=>"Disable cluster session synchronization"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"Provide cluster member specific comments"}} # Member device serial number def name prop_get('@name') end # IPv4/IPv6 address for the cluster member HA4 interface def ha4_ip_address prop_get('ha4-ip-address') end # IPv4/IPv6 address for the cluster member HA4 interface def ha4_ip_address=(val) prop_set('ha4-ip-address', val) end # IPv4/IPv6 address for the cluster member HA4-backup interface def ha4_backup_ip_address prop_get('ha4-backup-ip-address') end # IPv4/IPv6 address for the cluster member HA4-backup interface def ha4_backup_ip_address=(val) prop_set('ha4-backup-ip-address', val) end # Enable/disable session synchronization from current device to given member def session_synchronization prop_get('session-synchronization') end # Enable/disable session synchronization from current device to given member def session_synchronization=(val) prop_set('session-synchronization', val) end # Provide cluster member specific comments def comments prop_get('comments') end # Provide cluster member specific comments def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClusterMembers def cluster_members if @create_children @subclasses['cluster-members'] ||= ClusterMembers.new(parent_instance: self, create_children: @create_children) else ClusterMembers.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable/disable cluster participation"}, "cluster-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ID to identify members of same cluster", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/group-id]/@name"], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"99"}, "string"=>{"maxlen"=>"63"}}}, "cluster-synchronization-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=> "Cluster synchronization completion wait timeout in minutes (default 0 minutes)"}, "cluster-keepalive-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5000", "max"=>"60000", "default"=>"10000", "help-string"=> "Interval in milliseconds to wait before declaring keep-alive failure (default 10000 milliseconds)"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"Cluster description"}, "suspend-on-slot-failure"=> {"node-type"=>"element", "type"=>"enum", "default"=>"disabled", "optional"=>"yes", "help-string"=> "Determine if HA cluster should be suspended on any slot failure.", "enum"=> [{"value"=>"enabled", "help-string"=>"Suspend HA cluster on any slot failure"}, {"value"=>"disabled", "help-string"=> "Best effort to keep cluster functional on slot failure"}]}, "monitor-fail-hold-down-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in cluster-non-functional or ha-non-functional state following a link/path monitor failure, default 1"}} # Enable/disable cluster participation def enabled prop_get('enabled') end # Enable/disable cluster participation def enabled=(val) prop_set('enabled', val) end # ID to identify members of same cluster def cluster_id prop_get('cluster-id') end # ID to identify members of same cluster def cluster_id=(val) prop_set('cluster-id', val) end # Cluster synchronization completion wait timeout in minutes (default 0 minutes) def cluster_synchronization_timeout prop_get('cluster-synchronization-timeout') end # Cluster synchronization completion wait timeout in minutes (default 0 minutes) def cluster_synchronization_timeout=(val) prop_set('cluster-synchronization-timeout', val) end # Interval in milliseconds to wait before declaring keep-alive failure (default 10000 milliseconds) def cluster_keepalive_threshold prop_get('cluster-keepalive-threshold') end # Interval in milliseconds to wait before declaring keep-alive failure (default 10000 milliseconds) def cluster_keepalive_threshold=(val) prop_set('cluster-keepalive-threshold', val) end # Cluster description def description prop_get('description') end # Cluster description def description=(val) prop_set('description', val) end # Determine if HA cluster should be suspended on any slot failure. def suspend_on_slot_failure prop_get('suspend-on-slot-failure') end # Determine if HA cluster should be suspended on any slot failure. def suspend_on_slot_failure=(val) prop_set('suspend-on-slot-failure', val) end # Interval in minutes to stay in cluster-non-functional or ha-non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time prop_get('monitor-fail-hold-down-time') end # Interval in minutes to stay in cluster-non-functional or ha-non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time=(val) prop_set('monitor-fail-hold-down-time', val) end end # class Cluster def cluster @subclasses['cluster'] ||= Cluster.new(parent_instance: self, create_children: @create_children) end class Group < ConfigClass def has_multiple_values? false end def _section :'group' end class ElectionOption < ConfigClass def has_multiple_values? false end def _section :'election-option' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end class Recommended < ConfigClass def has_multiple_values? false end def _section :'recommended' end @props={} end # class Recommended def recommended @subclasses['recommended'] ||= Recommended.new(parent_instance: self, create_children: @create_children) end class Aggressive < ConfigClass def has_multiple_values? false end def _section :'aggressive' end @props={} end # class Aggressive def aggressive @subclasses['aggressive'] ||= Aggressive.new(parent_instance: self, create_children: @create_children) end class Advanced < ConfigClass def has_multiple_values? false end def _section :'advanced' end @props={"promotion-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to state change from Passive to Active or Active-Secondary to Active-Primary, default 2000"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"8000", "max"=>"60000", "default"=>"8000", "help-string"=> "Interval in milliseconds to send Hello messages, default 8000"}, "heartbeat-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to send Heartbeat pings, default 2000"}, "flap-max"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"3", "help-string"=> "Flaps before entering suspended state min=disable, max=infinite default =3", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"16", "default"=>"3"}, "enum"=> [{"value"=>"infinite", "help-string"=>"Keep flapping infinitely"}, {"value"=>"disable", "help-string"=>"Directly go to suspended state"}]}}, "preemption-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay Passive before preempting Active device or to stay Active-Secondary before preempting Active-Primary device, default 1"}, "monitor-fail-hold-up-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"0", "help-string"=> "Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0"}, "additional-master-hold-up-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"500", "help-string"=> "Interval in milliseconds to wait before honoring a path or link monitor failure on the Active or Active-Primary device, default 500"}} # Interval in milliseconds to state change from Passive to Active or Active-Secondary to Active-Primary, default 2000 def promotion_hold_time prop_get('promotion-hold-time') end # Interval in milliseconds to state change from Passive to Active or Active-Secondary to Active-Primary, default 2000 def promotion_hold_time=(val) prop_set('promotion-hold-time', val) end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval prop_get('hello-interval') end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval=(val) prop_set('hello-interval', val) end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval prop_get('heartbeat-interval') end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval=(val) prop_set('heartbeat-interval', val) end # Flaps before entering suspended state min=disable, max=infinite default =3 def flap_max prop_get('flap-max') end # Flaps before entering suspended state min=disable, max=infinite default =3 def flap_max=(val) prop_set('flap-max', val) end # Interval in minutes to stay Passive before preempting Active device or to stay Active-Secondary before preempting Active-Primary device, default 1 def preemption_hold_time prop_get('preemption-hold-time') end # Interval in minutes to stay Passive before preempting Active device or to stay Active-Secondary before preempting Active-Primary device, default 1 def preemption_hold_time=(val) prop_set('preemption-hold-time', val) end # Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0 def monitor_fail_hold_up_time prop_get('monitor-fail-hold-up-time') end # Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0 def monitor_fail_hold_up_time=(val) prop_set('monitor-fail-hold-up-time', val) end # Interval in milliseconds to wait before honoring a path or link monitor failure on the Active or Active-Primary device, default 500 def additional_master_hold_up_time prop_get('additional-master-hold-up-time') end # Interval in milliseconds to wait before honoring a path or link monitor failure on the Active or Active-Primary device, default 500 def additional_master_hold_up_time=(val) prop_set('additional-master-hold-up-time', val) end end # class Advanced def advanced @subclasses['advanced'] ||= Advanced.new(parent_instance: self, create_children: @create_children) end @props={} end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end @props={"device-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"highest: 0, lowest: 255", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/device-priority]/@name"], "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"255"}, "string"=>{"maxlen"=>"63"}}}, "preemptive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Configure on both HA peers to allow preemption by Passive or Active-Secondary device based on device-priority, default no"}, "heartbeat-backup"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use management port as backup path for heartbeat messages"}} # highest: 0, lowest: 255 def device_priority prop_get('device-priority') end # highest: 0, lowest: 255 def device_priority=(val) prop_set('device-priority', val) end # Configure on both HA peers to allow preemption by Passive or Active-Secondary device based on device-priority, default no def preemptive prop_get('preemptive') end # Configure on both HA peers to allow preemption by Passive or Active-Secondary device based on device-priority, default no def preemptive=(val) prop_set('preemptive', val) end # Use management port as backup path for heartbeat messages def heartbeat_backup prop_get('heartbeat-backup') end # Use management port as backup path for heartbeat messages def heartbeat_backup=(val) prop_set('heartbeat-backup', val) end end # class ElectionOption def election_option @subclasses['election-option'] ||= ElectionOption.new(parent_instance: self, create_children: @create_children) end class StateSynchronization < ConfigClass def has_multiple_values? false end def _section :'state-synchronization' end class Ha2KeepAlive < ConfigClass def has_multiple_values? false end def _section :'ha2-keep-alive' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable or disable feature"}, "action"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "optional"=>"yes", "type"=>"enum", "default"=>"log-only", "help-string"=>"System response on keep-alive failure", "enum"=> [{"value"=>"log-only", "help-string"=>"Log keep-alive failures only (default)"}, {"value"=>"split-datapath", "help-string"=>"Disable state-synchronization on failure"}]}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5000", "max"=>"60000", "default"=>"10000", "help-string"=> "Keep-alive failure duration in msecs before failure declared (default 10000 msecs)"}} # Enable or disable feature def enabled prop_get('enabled') end # Enable or disable feature def enabled=(val) prop_set('enabled', val) end # System response on keep-alive failure def action prop_get('action') end # System response on keep-alive failure def action=(val) prop_set('action', val) end # Keep-alive failure duration in msecs before failure declared (default 10000 msecs) def threshold prop_get('threshold') end # Keep-alive failure duration in msecs before failure declared (default 10000 msecs) def threshold=(val) prop_set('threshold', val) end end # class Ha2KeepAlive def ha2_keep_alive @subclasses['ha2-keep-alive'] ||= Ha2KeepAlive.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "transport"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ethernet", "help-string"=>"transport layer configuration", "enum"=> [{"value"=>"ethernet", "prune-on-sdb"=>"cfg.platform.vm.ha2-transport-eth-disable=True", "help-string"=>"Layer2 transport via Ethernet"}, {"value"=>"ip", "help-string"=>"Layer3 transport via IP protocol 99"}, {"value"=>"udp", "help-string"=>"Layer4 transport via UDP/29281"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # transport layer configuration def transport prop_get('transport') end # transport layer configuration def transport=(val) prop_set('transport', val) end end # class StateSynchronization def state_synchronization @subclasses['state-synchronization'] ||= StateSynchronization.new(parent_instance: self, create_children: @create_children) end class ConfigurationSynchronization < ConfigClass def has_multiple_values? false end def _section :'configuration-synchronization' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class ConfigurationSynchronization def configuration_synchronization @subclasses['configuration-synchronization'] ||= ConfigurationSynchronization.new(parent_instance: self, create_children: @create_children) end class Mode < ConfigClass def has_multiple_values? false end def _section :'mode' end class ActivePassive < ConfigClass def has_multiple_values? false end def _section :'active-passive' end @props={"passive-link-state"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "default"=>"shutdown", "type"=>"enum", "help-string"=>"Link mode of data-plane interfaces while in Passive state", "enum"=> [{"value"=>"shutdown", "help-string"=>"Link put into powered off state"}, {"value"=>"auto", "help-string"=>"Link put into automatically configured mode"}]}, "monitor-fail-hold-down-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in non-functional state following a link/path monitor failure, default 1"}} # Link mode of data-plane interfaces while in Passive state def passive_link_state prop_get('passive-link-state') end # Link mode of data-plane interfaces while in Passive state def passive_link_state=(val) prop_set('passive-link-state', val) end # Interval in minutes to stay in non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time prop_get('monitor-fail-hold-down-time') end # Interval in minutes to stay in non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time=(val) prop_set('monitor-fail-hold-down-time', val) end end # class ActivePassive def active_passive @subclasses['active-passive'] ||= ActivePassive.new(parent_instance: self, create_children: @create_children) end class ActiveActive < ConfigClass def has_multiple_values? false end def _section :'active-active' end class NetworkConfiguration < ConfigClass def has_multiple_values? false end def _section :'network-configuration' end class Sync < ConfigClass def has_multiple_values? false end def _section :'sync' end @props={"virtual-router"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Synchronize virtual router configuration"}, "logical-router"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Synchronize logical router configuration"}, "qos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Synchronize interface QoS configuration"}} # Synchronize virtual router configuration def virtual_router prop_get('virtual-router') end # Synchronize virtual router configuration def virtual_router=(val) prop_set('virtual-router', val) end # Synchronize logical router configuration def logical_router prop_get('logical-router') end # Synchronize logical router configuration def logical_router=(val) prop_set('logical-router', val) end # Synchronize interface QoS configuration def qos prop_get('qos') end # Synchronize interface QoS configuration def qos=(val) prop_set('qos', val) end end # class Sync def sync @subclasses['sync'] ||= Sync.new(parent_instance: self, create_children: @create_children) end @props={} end # class NetworkConfiguration def network_configuration @subclasses['network-configuration'] ||= NetworkConfiguration.new(parent_instance: self, create_children: @create_children) end class VirtualAddress < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Floating < ConfigClass def has_multiple_values? false end def _section :'floating' end class DevicePriority < ConfigClass def has_multiple_values? false end def _section :'device-priority' end @props={"device-0"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 0 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "device-1"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 1 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "failover-on-link-down"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Failover address if link state is down", "type"=>"bool", "default"=>"yes"}} # Device 0 priority, highest: 0, lowest: 255 def device_0 prop_get('device-0') end # Device 0 priority, highest: 0, lowest: 255 def device_0=(val) prop_set('device-0', val) end # Device 1 priority, highest: 0, lowest: 255 def device_1 prop_get('device-1') end # Device 1 priority, highest: 0, lowest: 255 def device_1=(val) prop_set('device-1', val) end # Failover address if link state is down def failover_on_link_down prop_get('failover-on-link-down') end # Failover address if link state is down def failover_on_link_down=(val) prop_set('failover-on-link-down', val) end end # class DevicePriority def device_priority @subclasses['device-priority'] ||= DevicePriority.new(parent_instance: self, create_children: @create_children) end @props={"bind-to-active-primary"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Floating IP bound to the Active-Primary device"}} # Floating IP bound to the Active-Primary device def bind_to_active_primary prop_get('bind-to-active-primary') end # Floating IP bound to the Active-Primary device def bind_to_active_primary=(val) prop_set('bind-to-active-primary', val) end end # class Floating def floating @subclasses['floating'] ||= Floating.new(parent_instance: self, create_children: @create_children) end class ArpLoadSharing < ConfigClass def has_multiple_values? false end def _section :'arp-load-sharing' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"User-specified hash seed"}} # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end @props={} end # class ArpLoadSharing def arp_load_sharing @subclasses['arp-load-sharing'] ||= ArpLoadSharing.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address or address object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ipv6' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Floating < ConfigClass def has_multiple_values? false end def _section :'floating' end class DevicePriority < ConfigClass def has_multiple_values? false end def _section :'device-priority' end @props={"device-0"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 0 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "device-1"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 1 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "failover-on-link-down"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Failover address if link state is down", "type"=>"bool", "default"=>"yes"}} # Device 0 priority, highest: 0, lowest: 255 def device_0 prop_get('device-0') end # Device 0 priority, highest: 0, lowest: 255 def device_0=(val) prop_set('device-0', val) end # Device 1 priority, highest: 0, lowest: 255 def device_1 prop_get('device-1') end # Device 1 priority, highest: 0, lowest: 255 def device_1=(val) prop_set('device-1', val) end # Failover address if link state is down def failover_on_link_down prop_get('failover-on-link-down') end # Failover address if link state is down def failover_on_link_down=(val) prop_set('failover-on-link-down', val) end end # class DevicePriority def device_priority @subclasses['device-priority'] ||= DevicePriority.new(parent_instance: self, create_children: @create_children) end @props={"bind-to-active-primary"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Floating IP bound to the Active-Primary device"}} # Floating IP bound to the Active-Primary device def bind_to_active_primary prop_get('bind-to-active-primary') end # Floating IP bound to the Active-Primary device def bind_to_active_primary=(val) prop_set('bind-to-active-primary', val) end end # class Floating def floating @subclasses['floating'] ||= Floating.new(parent_instance: self, create_children: @create_children) end class ArpLoadSharing < ConfigClass def has_multiple_values? false end def _section :'arp-load-sharing' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"User-specified hash seed"}} # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end @props={} end # class ArpLoadSharing def arp_load_sharing @subclasses['arp-load-sharing'] ||= ArpLoadSharing.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IPv6 address or address object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ipv6 def ipv6 if @create_children @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) else Ipv6.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Layer3 interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/logical-router/entry/vrf/entry/interface/member", "#myentry(devices)/network/virtual-router/entry/interface/member"]}} # Layer3 interface name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualAddress def virtual_address if @create_children @subclasses['virtual-address'] ||= VirtualAddress.new(parent_instance: self, create_children: @create_children) else VirtualAddress.new(parent_instance: self) end end class SessionOwnerSelection < ConfigClass def has_multiple_values? false end def _section :'session-owner-selection' end class PrimaryDevice < ConfigClass def has_multiple_values? false end def _section :'primary-device' end @props={} end # class PrimaryDevice def primary_device @subclasses['primary-device'] ||= PrimaryDevice.new(parent_instance: self, create_children: @create_children) end class FirstPacket < ConfigClass def has_multiple_values? false end def _section :'first-packet' end class SessionSetup < ConfigClass def has_multiple_values? false end def _section :'session-setup' end class PrimaryDevice < ConfigClass def has_multiple_values? false end def _section :'primary-device' end @props={} end # class PrimaryDevice def primary_device @subclasses['primary-device'] ||= PrimaryDevice.new(parent_instance: self, create_children: @create_children) end class FirstPacket < ConfigClass def has_multiple_values? false end def _section :'first-packet' end @props={} end # class FirstPacket def first_packet @subclasses['first-packet'] ||= FirstPacket.new(parent_instance: self, create_children: @create_children) end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"hash-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"source-and-destination", "help-string"=>"Address(es) to use as hash key", "enum"=> [{"value"=>"source", "help-string"=>"Source address only"}, {"value"=>"source-and-destination", "help-string"=>"Source and destination addresses"}]}, "hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"0", "help-string"=>"User-specified hash seed"}} # Address(es) to use as hash key def hash_key prop_get('hash-key') end # Address(es) to use as hash key def hash_key=(val) prop_set('hash-key', val) end # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end @props={} end # class SessionSetup def session_setup @subclasses['session-setup'] ||= SessionSetup.new(parent_instance: self, create_children: @create_children) end @props={} end # class FirstPacket def first_packet @subclasses['first-packet'] ||= FirstPacket.new(parent_instance: self, create_children: @create_children) end @props={} end # class SessionOwnerSelection def session_owner_selection @subclasses['session-owner-selection'] ||= SessionOwnerSelection.new(parent_instance: self, create_children: @create_children) end @props={"device-id"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Device ID in HA group, 0 or 1 or variable", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/device-id]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"0", "help-string"=>"Higher priority device"}, {"value"=>"1", "help-string"=>"Lower priority device"}]}}, "tentative-hold-time"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"60", "help-string"=> "Interval in seconds to stay in Tentative state following a link/path monitor recovery or before moving to an Active state, default 60 secs", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"600", "help-string"=>"Interval in seconds"}, "enum"=> [{"value"=>"disabled", "help-string"=>"disable tentative-hold-time functionality"}]}}} # Device ID in HA group, 0 or 1 or variable def device_id prop_get('device-id') end # Device ID in HA group, 0 or 1 or variable def device_id=(val) prop_set('device-id', val) end # Interval in seconds to stay in Tentative state following a link/path monitor recovery or before moving to an Active state, default 60 secs def tentative_hold_time prop_get('tentative-hold-time') end # Interval in seconds to stay in Tentative state following a link/path monitor recovery or before moving to an Active state, default 60 secs def tentative_hold_time=(val) prop_set('tentative-hold-time', val) end end # class ActiveActive def active_active @subclasses['active-active'] ||= ActiveActive.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) end class Monitoring < ConfigClass def has_multiple_values? false end def _section :'monitoring' end class PathMonitoring < ConfigClass def has_multiple_values? false end def _section :'path-monitoring' end class PathGroup < ConfigClass def has_multiple_values? false end def _section :'path-group' end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-wire/entry/@name"]}, "source-ip"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Source IPv4/6 address to send monitoring packet"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end # Source IPv4/6 address to send monitoring packet def source_ip prop_get('source-ip') end # Source IPv4/6 address to send monitoring packet def source_ip=(val) prop_set('source-ip', val) end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class Vlan < XML::ConfigClass def has_multiple_values? true end def _section :'vlan' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/vlan/entry/@name"]}, "source-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Source IPv4/6 address to send monitoring packet"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end # Source IPv4/6 address to send monitoring packet def source_ip prop_get('source-ip') end # Source IPv4/6 address to send monitoring packet def source_ip=(val) prop_set('source-ip', val) end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vlan def vlan if @create_children @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) else Vlan.new(parent_instance: self) end end class VirtualRouter < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-router/entry/@name"]}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualRouter def virtual_router if @create_children @subclasses['virtual-router'] ||= VirtualRouter.new(parent_instance: self, create_children: @create_children) else VirtualRouter.new(parent_instance: self) end end class LogicalRouter < XML::ConfigClass def has_multiple_values? true end def _section :'logical-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/logical-router/entry/@name"]}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogicalRouter def logical_router if @create_children @subclasses['logical-router'] ||= LogicalRouter.new(parent_instance: self, create_children: @create_children) else LogicalRouter.new(parent_instance: self) end end @props={} end # class PathGroup def path_group @subclasses['path-group'] ||= PathGroup.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any path group)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any path group) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any path group) def failure_condition=(val) prop_set('failure-condition', val) end end # class PathMonitoring def path_monitoring @subclasses['path-monitoring'] ||= PathMonitoring.new(parent_instance: self, create_children: @create_children) end class LinkMonitoring < ConfigClass def has_multiple_values? false end def _section :'link-monitoring' end class LinkGroup < XML::ConfigClass def has_multiple_values? true end def _section :'link-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[not(layer3/decrypt-forward = 'yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any link)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any link) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any link) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LinkGroup def link_group if @create_children @subclasses['link-group'] ||= LinkGroup.new(parent_instance: self, create_children: @create_children) else LinkGroup.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any link group)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any link group) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any link group) def failure_condition=(val) prop_set('failure-condition', val) end end # class LinkMonitoring def link_monitoring @subclasses['link-monitoring'] ||= LinkMonitoring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Monitoring def monitoring @subclasses['monitoring'] ||= Monitoring.new(parent_instance: self, create_children: @create_children) end @props={"group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/group-id]/@name"], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"63"}, "string"=>{"maxlen"=>"63"}}}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "help-string"=>"HA pair group description"}, "peer-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"HA pair Peer IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "peer-ip-backup"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "optional"=>"yes", "type"=>"multiple", "help-string"=>"HA pair Backup Peer IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def group_id prop_get('group-id') end def group_id=(val) prop_set('group-id', val) end # HA pair group description def description prop_get('description') end # HA pair group description def description=(val) prop_set('description', val) end # HA pair Peer IP address def peer_ip prop_get('peer-ip') end # HA pair Peer IP address def peer_ip=(val) prop_set('peer-ip', val) end # HA pair Backup Peer IP address def peer_ip_backup prop_get('peer-ip-backup') end # HA pair Backup Peer IP address def peer_ip_backup=(val) prop_set('peer-ip-backup', val) end end # class Group def group @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability pair"}} # Enable high-availability pair def enabled prop_get('enabled') end # Enable high-availability pair def enabled=(val) prop_set('enabled', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end class LogFwdCard < ConfigClass def has_multiple_values? false end def _section :'log-fwd-card' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../@name, '.')", "regex"=>"^((lfc[1-9]\\/[1-9]\\.)?([1-9][0-9]{0,3}))$"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}} def name prop_get('@name') end # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end @props={"port-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"port priority in LACP"}} # port priority in LACP def port_priority prop_get('port-priority') end # port priority in LACP def port_priority=(val) prop_set('port-priority', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["string('lfc1/1')", "string('lfc1/9')"]}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link speed", "enum"=>[{"value"=>"auto", "help-string"=>"Auto negotiation"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link duplex", "enum"=>[{"value"=>"auto", "help-string"=>"Auto negotiation"}]}, "link-state"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link state", "enum"=> [{"value"=>"auto", "help-string"=>"Auto detect"}, {"value"=>"up", "help-string"=>"Force to up"}, {"value"=>"down", "help-string"=>"Force to down"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # Interface link state def link_state prop_get('link-state') end # Interface link state def link_state=(val) prop_set('link-state', val) end # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class LogFwdCard def log_fwd_card @subclasses['log-fwd-card'] ||= LogFwdCard.new(parent_instance: self, create_children: @create_children) end @props={} end # class Deviceconfig def deviceconfig @subclasses['deviceconfig'] ||= Deviceconfig.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class MonitorProfile < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"3", "help-string"=>"probing interval in seconds"}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"5", "help-string"=>"number of failed probe to determine tunnel is down"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"wait-recover", "help-string"=>"configure action triggered when tunnel status change", "enum"=> [{"value"=>"wait-recover", "help-string"=>"when tunnel is down, wait for the recover"}, {"value"=>"fail-over", "help-string"=> "when tunnel is down, make traffic fail over to backup path is configured"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # probing interval in seconds def interval prop_get('interval') end # probing interval in seconds def interval=(val) prop_set('interval', val) end # number of failed probe to determine tunnel is down def threshold prop_get('threshold') end # number of failed probe to determine tunnel is down def threshold=(val) prop_set('threshold', val) end # configure action triggered when tunnel status change def action prop_get('action') end # configure action triggered when tunnel status change def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorProfile def monitor_profile if @create_children @subclasses['monitor-profile'] ||= MonitorProfile.new(parent_instance: self, create_children: @create_children) else MonitorProfile.new(parent_instance: self) end end class InterfaceManagementProfile < XML::ConfigClass def has_multiple_values? true end def _section :'interface-management-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"ip address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "http"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "https"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "ping"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "response-pages"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "userid-service"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "userid-syslog-listener-udp__8"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool", "prune-on"=>"fips-mode"}, "ssh"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "telnet"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "snmp"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def http prop_get('http') end def http=(val) prop_set('http', val) end def https prop_get('https') end def https=(val) prop_set('https', val) end def ping prop_get('ping') end def ping=(val) prop_set('ping', val) end def response_pages prop_get('response-pages') end def response_pages=(val) prop_set('response-pages', val) end def userid_service prop_get('userid-service') end def userid_service=(val) prop_set('userid-service', val) end def userid_syslog_listener_ssl prop_get('userid-syslog-listener-ssl') end def userid_syslog_listener_ssl=(val) prop_set('userid-syslog-listener-ssl', val) end def userid_syslog_listener_udp__8 prop_get('userid-syslog-listener-udp__8') end def userid_syslog_listener_udp__8=(val) prop_set('userid-syslog-listener-udp__8', val) end def ssh prop_get('ssh') end def ssh=(val) prop_set('ssh', val) end def telnet prop_get('telnet') end def telnet=(val) prop_set('telnet', val) end def snmp prop_get('snmp') end def snmp=(val) prop_set('snmp', val) end def http_ocsp prop_get('http-ocsp') end def http_ocsp=(val) prop_set('http-ocsp', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class InterfaceManagementProfile def interface_management_profile if @create_children @subclasses['interface-management-profile'] ||= InterfaceManagementProfile.new(parent_instance: self, create_children: @create_children) else InterfaceManagementProfile.new(parent_instance: self) end end class ZoneProtectionProfile < XML::ConfigClass def has_multiple_values? true end def _section :'zone-protection-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Scan < XML::ConfigClass def has_multiple_values? true end def _section :'scan' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={} end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"16", "regex"=>"^[0-9]+$", "help-string"=>"threat id", "autocomplete"=>"yes", "memberof"=> ["##/predefined/threats/scan/entry/@id", "##/predefined/threats/scan/entry/@id"]}, "interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"2", "max"=>"65535"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"2", "max"=>"65535"}} # threat id def name prop_get('@name') end def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scan def scan if @create_children @subclasses['scan'] ||= Scan.new(parent_instance: self, create_children: @create_children) else Scan.new(parent_instance: self) end end class ScanWhiteList < XML::ConfigClass def has_multiple_values? true end def _section :'scan-white-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string"}, "ipv4"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} def name prop_get('@name') end # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ScanWhiteList def scan_white_list if @create_children @subclasses['scan-white-list'] ||= ScanWhiteList.new(parent_instance: self, create_children: @create_children) else ScanWhiteList.new(parent_instance: self) end end class Flood < ConfigClass def has_multiple_values? false end def _section :'flood' end class TcpSyn < ConfigClass def has_multiple_values? false end def _section :'tcp-syn' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end class SynCookies < ConfigClass def has_multiple_values? false end def _section :'syn-cookies' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"0", "help-string"=>"Connection rate (cps) to activate SYN cookies proxy"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"1000000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to activate SYN cookies proxy def activate_rate prop_get('activate-rate') end # Connection rate (cps) to activate SYN cookies proxy def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class SynCookies def syn_cookies @subclasses['syn-cookies'] ||= SynCookies.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class TcpSyn def tcp_syn @subclasses['tcp-syn'] ||= TcpSyn.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end class Icmp < ConfigClass def has_multiple_values? false end def _section :'icmp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmp def icmp @subclasses['icmp'] ||= Icmp.new(parent_instance: self, create_children: @create_children) end class Icmpv6 < ConfigClass def has_multiple_values? false end def _section :'icmpv6' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmpv6 def icmpv6 @subclasses['icmpv6'] ||= Icmpv6.new(parent_instance: self, create_children: @create_children) end class OtherIp < ConfigClass def has_multiple_values? false end def _section :'other-ip' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class OtherIp def other_ip @subclasses['other-ip'] ||= OtherIp.new(parent_instance: self, create_children: @create_children) end class SctpInit < ConfigClass def has_multiple_values? false end def _section :'sctp-init' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class SctpInit def sctp_init @subclasses['sctp-init'] ||= SctpInit.new(parent_instance: self, create_children: @create_children) end @props={} end # class Flood def flood @subclasses['flood'] ||= Flood.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class FilterExtHdr < ConfigClass def has_multiple_values? false end def _section :'filter-ext-hdr' end @props={"hop-by-hop-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with Hop-by-Hop extension"}, "routing-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with Routing extension"}, "dest-option-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with Destination extension"}} # Drop packets with Hop-by-Hop extension def hop_by_hop_hdr prop_get('hop-by-hop-hdr') end # Drop packets with Hop-by-Hop extension def hop_by_hop_hdr=(val) prop_set('hop-by-hop-hdr', val) end # Drop packets with Routing extension def routing_hdr prop_get('routing-hdr') end # Drop packets with Routing extension def routing_hdr=(val) prop_set('routing-hdr', val) end # Drop packets with Destination extension def dest_option_hdr prop_get('dest-option-hdr') end # Drop packets with Destination extension def dest_option_hdr=(val) prop_set('dest-option-hdr', val) end end # class FilterExtHdr def filter_ext_hdr @subclasses['filter-ext-hdr'] ||= FilterExtHdr.new(parent_instance: self, create_children: @create_children) end class IgnoreInvPkt < ConfigClass def has_multiple_values? false end def _section :'ignore-inv-pkt' end @props={"dest-unreach"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 destination unreachable - require explicit security rule match"}, "pkt-too-big"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 packet too big - require explicit security rule match"}, "time-exceeded"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 time exceeded - require explicit security rule match"}, "param-problem"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 parameter problem - require explicit security rule match"}, "redirect"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"ICMPv6 redirect - require explicit security rule match"}} # ICMPv6 destination unreachable - require explicit security rule match def dest_unreach prop_get('dest-unreach') end # ICMPv6 destination unreachable - require explicit security rule match def dest_unreach=(val) prop_set('dest-unreach', val) end # ICMPv6 packet too big - require explicit security rule match def pkt_too_big prop_get('pkt-too-big') end # ICMPv6 packet too big - require explicit security rule match def pkt_too_big=(val) prop_set('pkt-too-big', val) end # ICMPv6 time exceeded - require explicit security rule match def time_exceeded prop_get('time-exceeded') end # ICMPv6 time exceeded - require explicit security rule match def time_exceeded=(val) prop_set('time-exceeded', val) end # ICMPv6 parameter problem - require explicit security rule match def param_problem prop_get('param-problem') end # ICMPv6 parameter problem - require explicit security rule match def param_problem=(val) prop_set('param-problem', val) end # ICMPv6 redirect - require explicit security rule match def redirect prop_get('redirect') end # ICMPv6 redirect - require explicit security rule match def redirect=(val) prop_set('redirect', val) end end # class IgnoreInvPkt def ignore_inv_pkt @subclasses['ignore-inv-pkt'] ||= IgnoreInvPkt.new(parent_instance: self, create_children: @create_children) end @props={"routing-header-0"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 0 routing header"}, "routing-header-1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 1 routing header"}, "routing-header-3"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with type 3 routing header"}, "routing-header-4-252"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 4 to type 252 routing header"}, "routing-header-253"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with type 253 routing header"}, "routing-header-254"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with type 254 routing header"}, "routing-header-255"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 255 routing header"}, "ipv4-compatible-address"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with IPv4 compatible address"}, "multicast-source"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with multicast source address"}, "anycast-source"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with anycast source address"}, "options-invalid-ipv6-discard"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Drop packets with invalid IPv6 options in extension header"}, "icmpv6-too-big-small-mtu-discard"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Drop packets with MTU in ICMPv6 (Packet Too Big) less than 1280 bytes"}, "needless-fragment-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with needless fragment header"}, "reserved-field-set-discard"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with reserved field different than 0"}} # Drop packets with type 0 routing header def routing_header_0 prop_get('routing-header-0') end # Drop packets with type 0 routing header def routing_header_0=(val) prop_set('routing-header-0', val) end # Drop packets with type 1 routing header def routing_header_1 prop_get('routing-header-1') end # Drop packets with type 1 routing header def routing_header_1=(val) prop_set('routing-header-1', val) end # Drop packets with type 3 routing header def routing_header_3 prop_get('routing-header-3') end # Drop packets with type 3 routing header def routing_header_3=(val) prop_set('routing-header-3', val) end # Drop packets with type 4 to type 252 routing header def routing_header_4_252 prop_get('routing-header-4-252') end # Drop packets with type 4 to type 252 routing header def routing_header_4_252=(val) prop_set('routing-header-4-252', val) end # Drop packets with type 253 routing header def routing_header_253 prop_get('routing-header-253') end # Drop packets with type 253 routing header def routing_header_253=(val) prop_set('routing-header-253', val) end # Drop packets with type 254 routing header def routing_header_254 prop_get('routing-header-254') end # Drop packets with type 254 routing header def routing_header_254=(val) prop_set('routing-header-254', val) end # Drop packets with type 255 routing header def routing_header_255 prop_get('routing-header-255') end # Drop packets with type 255 routing header def routing_header_255=(val) prop_set('routing-header-255', val) end # Drop packets with IPv4 compatible address def ipv4_compatible_address prop_get('ipv4-compatible-address') end # Drop packets with IPv4 compatible address def ipv4_compatible_address=(val) prop_set('ipv4-compatible-address', val) end # Drop packets with multicast source address def multicast_source prop_get('multicast-source') end # Drop packets with multicast source address def multicast_source=(val) prop_set('multicast-source', val) end # Drop packets with anycast source address def anycast_source prop_get('anycast-source') end # Drop packets with anycast source address def anycast_source=(val) prop_set('anycast-source', val) end # Drop packets with invalid IPv6 options in extension header def options_invalid_ipv6_discard prop_get('options-invalid-ipv6-discard') end # Drop packets with invalid IPv6 options in extension header def options_invalid_ipv6_discard=(val) prop_set('options-invalid-ipv6-discard', val) end # Drop packets with MTU in ICMPv6 (Packet Too Big) less than 1280 bytes def icmpv6_too_big_small_mtu_discard prop_get('icmpv6-too-big-small-mtu-discard') end # Drop packets with MTU in ICMPv6 (Packet Too Big) less than 1280 bytes def icmpv6_too_big_small_mtu_discard=(val) prop_set('icmpv6-too-big-small-mtu-discard', val) end # Drop packets with needless fragment header def needless_fragment_hdr prop_get('needless-fragment-hdr') end # Drop packets with needless fragment header def needless_fragment_hdr=(val) prop_set('needless-fragment-hdr', val) end # Drop packets with reserved field different than 0 def reserved_field_set_discard prop_get('reserved-field-set-discard') end # Drop packets with reserved field different than 0 def reserved_field_set_discard=(val) prop_set('reserved-field-set-discard', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class NonIpProtocol < ConfigClass def has_multiple_values? false end def _section :'non-ip-protocol' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Protocol name"}, "ether-type"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[0][xX][0-9A-Fa-f]{4}$", "help-string"=>"ether type in 2-byte hex value"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # Protocol name def name prop_get('@name') end # ether type in 2-byte hex value def ether_type prop_get('ether-type') end # ether type in 2-byte hex value def ether_type=(val) prop_set('ether-type', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"list-type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"exclude", "help-string"=>"exclude or include list", "uiHint-fieldLabel"=>"Rule Type", "enum"=> [{"value"=>"exclude", "help-string"=>"Exclude List"}, {"value"=>"include", "help-string"=>"Include List"}]}} # exclude or include list def list_type prop_get('list-type') end # exclude or include list def list_type=(val) prop_set('list-type', val) end end # class NonIpProtocol def non_ip_protocol @subclasses['non-ip-protocol'] ||= NonIpProtocol.new(parent_instance: self, create_children: @create_children) end class L2SecGroupTagProtection < ConfigClass def has_multiple_values? false end def _section :'l2-sec-group-tag-protection' end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"tag name"}, "tag"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^((0|[1-9][0-9]{0,4})|((0|[1-9][0-9]{0,4})-(0|[1-9][0-9]{0,4})))$", "help-string"=>"tag or range of tags to block"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # tag name def name prop_get('@name') end # tag or range of tags to block def tag prop_get('tag') end # tag or range of tags to block def tag=(val) prop_set('tag', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={} end # class L2SecGroupTagProtection def l2_sec_group_tag_protection @subclasses['l2-sec-group-tag-protection'] ||= L2SecGroupTagProtection.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "tcp-reject-non-syn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"global", "help-string"=>"reject non-SYN TCP packet for session setup", "enum"=> [{"value"=>"global", "help-string"=>"Use global setting"}, {"value"=>"yes", "help-string"=>"Reject non-SYN TCP"}, {"value"=>"no", "help-string"=>"Accept non-SYN TCP"}]}, "strip-mptcp-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"global", "help-string"=>"strip mptcp option", "enum"=> [{"value"=>"global", "help-string"=>"Use global setting"}, {"value"=>"yes", "help-string"=>"Strip mptcp option"}, {"value"=>"no", "help-string"=>"Not Strip mptcp option"}]}, "asymmetric-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"global", "help-string"=> "actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST", "enum"=> [{"value"=>"global", "help-string"=>"Use global setting"}, {"value"=>"drop", "help-string"=> "drop offending packets that violated TCP sliding window tracking, enable TCP sequence number check for FIN/RST"}, {"value"=>"bypass", "help-string"=> "bypass inspection for the session that has TCP sliding window tracking errors"}]}, "discard-ip-spoof"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard spoofed IP packet"}, "discard-ip-frag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard IP fragment"}, "discard-icmp-ping-zero-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard ICMP Ping with zero ID"}, "discard-icmp-frag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard ICMP fragment"}, "discard-icmp-large-packet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard Large ICMP packet (IP length > 1024B)"}, "discard-icmp-error"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard ICMP embedded with error message"}, "suppress-icmp-timeexceeded"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not reply ICMP TTL expired error (layer3 only)"}, "suppress-icmp-needfrag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not reply ICMP NEEDFRAG (layer3 only)"}, "discard-strict-source-routing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with strict source routing IP option"}, "discard-loose-source-routing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with loose source routing IP option"}, "discard-timestamp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Timestmp IP option"}, "discard-record-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Record Route IP option"}, "discard-security"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Security IP option"}, "discard-stream-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Stream ID IP option"}, "discard-unknown-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with unknown IP option"}, "discard-malformed-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with malformed IP option"}, "discard-overlapping-tcp-segment-mismatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard sessions with mismatch tcp overlapping segment"}, "strict-ip-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Perform strict IP address check"}, "remove-tcp-timestamp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Remove TCP Timestamp"}, "discard-tcp-split-handshake"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard tcp split handshake packet"}, "discard-tcp-syn-with-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Discard tcp syn packet with data payload"}, "discard-tcp-synack-with-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Discard tcp syn ack packet with data payload"}, "strip-tcp-fast-open-and-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Strip tcp fast option and data payload"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn prop_get('tcp-reject-non-syn') end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn=(val) prop_set('tcp-reject-non-syn', val) end # strip mptcp option def strip_mptcp_option prop_get('strip-mptcp-option') end # strip mptcp option def strip_mptcp_option=(val) prop_set('strip-mptcp-option', val) end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path prop_get('asymmetric-path') end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path=(val) prop_set('asymmetric-path', val) end # Discard spoofed IP packet def discard_ip_spoof prop_get('discard-ip-spoof') end # Discard spoofed IP packet def discard_ip_spoof=(val) prop_set('discard-ip-spoof', val) end # Discard IP fragment def discard_ip_frag prop_get('discard-ip-frag') end # Discard IP fragment def discard_ip_frag=(val) prop_set('discard-ip-frag', val) end # Discard ICMP Ping with zero ID def discard_icmp_ping_zero_id prop_get('discard-icmp-ping-zero-id') end # Discard ICMP Ping with zero ID def discard_icmp_ping_zero_id=(val) prop_set('discard-icmp-ping-zero-id', val) end # Discard ICMP fragment def discard_icmp_frag prop_get('discard-icmp-frag') end # Discard ICMP fragment def discard_icmp_frag=(val) prop_set('discard-icmp-frag', val) end # Discard Large ICMP packet (IP length > 1024B) def discard_icmp_large_packet prop_get('discard-icmp-large-packet') end # Discard Large ICMP packet (IP length > 1024B) def discard_icmp_large_packet=(val) prop_set('discard-icmp-large-packet', val) end # Discard ICMP embedded with error message def discard_icmp_error prop_get('discard-icmp-error') end # Discard ICMP embedded with error message def discard_icmp_error=(val) prop_set('discard-icmp-error', val) end # Do not reply ICMP TTL expired error (layer3 only) def suppress_icmp_timeexceeded prop_get('suppress-icmp-timeexceeded') end # Do not reply ICMP TTL expired error (layer3 only) def suppress_icmp_timeexceeded=(val) prop_set('suppress-icmp-timeexceeded', val) end # Do not reply ICMP NEEDFRAG (layer3 only) def suppress_icmp_needfrag prop_get('suppress-icmp-needfrag') end # Do not reply ICMP NEEDFRAG (layer3 only) def suppress_icmp_needfrag=(val) prop_set('suppress-icmp-needfrag', val) end # Discard packets with strict source routing IP option def discard_strict_source_routing prop_get('discard-strict-source-routing') end # Discard packets with strict source routing IP option def discard_strict_source_routing=(val) prop_set('discard-strict-source-routing', val) end # Discard packets with loose source routing IP option def discard_loose_source_routing prop_get('discard-loose-source-routing') end # Discard packets with loose source routing IP option def discard_loose_source_routing=(val) prop_set('discard-loose-source-routing', val) end # Discard packets with Timestmp IP option def discard_timestamp prop_get('discard-timestamp') end # Discard packets with Timestmp IP option def discard_timestamp=(val) prop_set('discard-timestamp', val) end # Discard packets with Record Route IP option def discard_record_route prop_get('discard-record-route') end # Discard packets with Record Route IP option def discard_record_route=(val) prop_set('discard-record-route', val) end # Discard packets with Security IP option def discard_security prop_get('discard-security') end # Discard packets with Security IP option def discard_security=(val) prop_set('discard-security', val) end # Discard packets with Stream ID IP option def discard_stream_id prop_get('discard-stream-id') end # Discard packets with Stream ID IP option def discard_stream_id=(val) prop_set('discard-stream-id', val) end # Discard packets with unknown IP option def discard_unknown_option prop_get('discard-unknown-option') end # Discard packets with unknown IP option def discard_unknown_option=(val) prop_set('discard-unknown-option', val) end # Discard packets with malformed IP option def discard_malformed_option prop_get('discard-malformed-option') end # Discard packets with malformed IP option def discard_malformed_option=(val) prop_set('discard-malformed-option', val) end # Discard sessions with mismatch tcp overlapping segment def discard_overlapping_tcp_segment_mismatch prop_get('discard-overlapping-tcp-segment-mismatch') end # Discard sessions with mismatch tcp overlapping segment def discard_overlapping_tcp_segment_mismatch=(val) prop_set('discard-overlapping-tcp-segment-mismatch', val) end # Perform strict IP address check def strict_ip_check prop_get('strict-ip-check') end # Perform strict IP address check def strict_ip_check=(val) prop_set('strict-ip-check', val) end # Remove TCP Timestamp def remove_tcp_timestamp prop_get('remove-tcp-timestamp') end # Remove TCP Timestamp def remove_tcp_timestamp=(val) prop_set('remove-tcp-timestamp', val) end # Discard tcp split handshake packet def discard_tcp_split_handshake prop_get('discard-tcp-split-handshake') end # Discard tcp split handshake packet def discard_tcp_split_handshake=(val) prop_set('discard-tcp-split-handshake', val) end # Discard tcp syn packet with data payload def discard_tcp_syn_with_data prop_get('discard-tcp-syn-with-data') end # Discard tcp syn packet with data payload def discard_tcp_syn_with_data=(val) prop_set('discard-tcp-syn-with-data', val) end # Discard tcp syn ack packet with data payload def discard_tcp_synack_with_data prop_get('discard-tcp-synack-with-data') end # Discard tcp syn ack packet with data payload def discard_tcp_synack_with_data=(val) prop_set('discard-tcp-synack-with-data', val) end # Strip tcp fast option and data payload def strip_tcp_fast_open_and_data prop_get('strip-tcp-fast-open-and-data') end # Strip tcp fast option and data payload def strip_tcp_fast_open_and_data=(val) prop_set('strip-tcp-fast-open-and-data', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ZoneProtectionProfile def zone_protection_profile if @create_children @subclasses['zone-protection-profile'] ||= ZoneProtectionProfile.new(parent_instance: self, create_children: @create_children) else ZoneProtectionProfile.new(parent_instance: self) end end class LldpProfile < XML::ConfigClass def has_multiple_values? true end def _section :'lldp-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OptionTlvs < ConfigClass def has_multiple_values? false end def _section :'option-tlvs' end class ManagementAddress < ConfigClass def has_multiple_values? false end def _section :'management-address' end class Iplist < XML::ConfigClass def has_multiple_values? true end def _section :'iplist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/loopback/units/entry/@name", "string('loopback')", "string('management')"]}, "ipv4"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#config/devices/entry/deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#config/devices/entry/deviceconfig/system/ipv6-address[('$ifname'='management') or ('$ifname'='')]", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} def name prop_get('@name') end # interface name def interface prop_get('interface') end # interface name def interface=(val) prop_set('interface', val) end # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Iplist def iplist if @create_children @subclasses['iplist'] ||= Iplist.new(parent_instance: self, create_children: @create_children) else Iplist.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class ManagementAddress def management_address @subclasses['management-address'] ||= ManagementAddress.new(parent_instance: self, create_children: @create_children) end @props={"port-description"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "system-name"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "system-description"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "system-capabilities"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} def port_description prop_get('port-description') end def port_description=(val) prop_set('port-description', val) end def system_name prop_get('system-name') end def system_name=(val) prop_set('system-name', val) end def system_description prop_get('system-description') end def system_description=(val) prop_set('system-description', val) end def system_capabilities prop_get('system-capabilities') end def system_capabilities=(val) prop_set('system-capabilities', val) end end # class OptionTlvs def option_tlvs @subclasses['option-tlvs'] ||= OptionTlvs.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"transmit-receive", "help-string"=>"lldp operation mode", "enum"=> [{"value"=>"transmit-receive", "help-string"=>"transmit and receive"}, {"value"=>"transmit-only", "help-string"=>"transmit only and will not receive"}, {"value"=>"receive-only", "help-string"=>"receive only and will not transmit"}]}, "snmp-syslog-notification"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # lldp operation mode def mode prop_get('mode') end # lldp operation mode def mode=(val) prop_set('mode', val) end def snmp_syslog_notification prop_get('snmp-syslog-notification') end def snmp_syslog_notification=(val) prop_set('snmp-syslog-notification', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LldpProfile def lldp_profile if @create_children @subclasses['lldp-profile'] ||= LldpProfile.new(parent_instance: self, create_children: @create_children) else LldpProfile.new(parent_instance: self) end end class BfdProfile < XML::ConfigClass def has_multiple_values? true end def _section :'bfd-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Multihop < ConfigClass def has_multiple_values? false end def _section :'multihop' end @props={"min-received-ttl"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"254", "help-string"=>"minimum accepted ttl on received BFD packet", "uiHint-fieldLabel"=>"Minimum Rx TTL"}} # minimum accepted ttl on received BFD packet def min_received_ttl prop_get('min-received-ttl') end # minimum accepted ttl on received BFD packet def min_received_ttl=(val) prop_set('min-received-ttl', val) end end # class Multihop def multihop @subclasses['multihop'] ||= Multihop.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"active", "help-string"=>"BFD operation mode", "enum"=> [{"value"=>"active", "help-string"=>"actively sends control packets to neighbor"}, {"value"=>"passive", "help-string"=> "wait for neighbor to send control packets, will respond as required"}]}, "min-tx-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"50", "max"=>"2000", "default"=>"1000", "help-string"=>"desired minimum tx interval in ms", "uiHint-fieldLabel"=>"Desired Minimum Tx Interval (ms)"}, "min-rx-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"50", "max"=>"2000", "default"=>"1000", "help-string"=>"required minimum rx interval in ms", "uiHint-fieldLabel"=>"Required Minimum Rx Interval (ms)"}, "detection-multiplier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"50", "default"=>"3", "help-string"=>"multiplier sent to remote system", "uiHint-fieldLabel"=>"Detection Time Multiplier"}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"120000", "default"=>"0", "help-string"=>"delay transmission and reception of control packets in ms", "uiHint-fieldLabel"=>"Hold Time (ms)"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # BFD operation mode def mode prop_get('mode') end # BFD operation mode def mode=(val) prop_set('mode', val) end # desired minimum tx interval in ms def min_tx_interval prop_get('min-tx-interval') end # desired minimum tx interval in ms def min_tx_interval=(val) prop_set('min-tx-interval', val) end # required minimum rx interval in ms def min_rx_interval prop_get('min-rx-interval') end # required minimum rx interval in ms def min_rx_interval=(val) prop_set('min-rx-interval', val) end # multiplier sent to remote system def detection_multiplier prop_get('detection-multiplier') end # multiplier sent to remote system def detection_multiplier=(val) prop_set('detection-multiplier', val) end # delay transmission and reception of control packets in ms def hold_time prop_get('hold-time') end # delay transmission and reception of control packets in ms def hold_time=(val) prop_set('hold-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class BfdProfile def bfd_profile if @create_children @subclasses['bfd-profile'] ||= BfdProfile.new(parent_instance: self, create_children: @create_children) else BfdProfile.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Interface < ConfigClass def has_multiple_values? false end def _section :'interface' end class Ethernet < XML::ConfigClass def has_multiple_values? true end def _section :'ethernet' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tap < ConfigClass def has_multiple_values? false end def _section :'tap' end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Tap def tap @subclasses['tap'] ||= Tap.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class LogCard < ConfigClass def has_multiple_values? false end def _section :'log-card' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}} def name prop_get('@name') end # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}} # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end end # class LogCard def log_card @subclasses['log-card'] ||= LogCard.new(parent_instance: self, create_children: @create_children) end class DecryptMirror < ConfigClass def has_multiple_values? false end def _section :'decrypt-mirror' end @props={} end # class DecryptMirror def decrypt_mirror @subclasses['decrypt-mirror'] ||= DecryptMirror.new(parent_instance: self, create_children: @create_children) end class VirtualWire < ConfigClass def has_multiple_values? false end def _section :'virtual-wire' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class IpClassifier < XML::ConfigClass def has_multiple_values? true end def _section :'ip-classifier' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1024", "multi-types"=>{"ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpClassifier def ip_classifier if @create_children @subclasses['ip-classifier'] ||= IpClassifier.new(parent_instance: self, create_children: @create_children) else IpClassifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Allow LACP traffic to traverse this device in HA passive state"}} # Allow LACP traffic to traverse this device in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Allow LACP traffic to traverse this device in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={} end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class VirtualWire def virtual_wire @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) end class Layer2 < ConfigClass def has_multiple_values? false end def _section :'layer2' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer2 def layer2 @subclasses['layer2'] ||= Layer2.new(parent_instance: self, create_children: @create_children) end class Layer3 < ConfigClass def has_multiple_values? false end def _section :'layer3' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "sdwan-gateway"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Gateway IPv4 Address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IP address/netmask or address object name def name prop_get('@name') end # Gateway IPv4 Address def sdwan_gateway prop_get('sdwan-gateway') end # Gateway IPv4 Address def sdwan_gateway=(val) prop_set('sdwan-gateway', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Pppoe < ConfigClass def has_multiple_values? false end def _section :'pppoe' end class StaticAddress < ConfigClass def has_multiple_values? false end def _section :'static-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"static ip address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # static ip address def ip prop_get('ip') end # static ip address def ip=(val) prop_set('ip', val) end end # class StaticAddress def static_address @subclasses['static-address'] ||= StaticAddress.new(parent_instance: self, create_children: @create_children) end class Passive < ConfigClass def has_multiple_values? false end def _section :'passive' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Passive def passive @subclasses['passive'] ||= Passive.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "authentication"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"authentication protocol", "enum"=> [{"value"=>"CHAP", "help-string"=>"Challenge Handshake Authentication Protocol"}, {"value"=>"PAP", "help-string"=>"Password Authentication Protocol"}, {"value"=>"auto", "help-string"=>"auto select CHAP or PAP"}]}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"username for ppp authentication"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"password for ppp autentication"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"automatically create default route pointing to peer"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric of the default route created"}, "access-concentrator"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"desired access concentrator"}, "service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"desired service"}, "auto-connect"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"automatically re-connect to peer"}, "auto-connect-timeout"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"0", "min"=>"0", "max"=>"65535", "help-string"=>"delay (in seconds) before autmoatically re-connect"}, "idle-disconnect"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"0", "min"=>"0", "max"=>"65535", "help-string"=> "idle timeout (in minutes) for the pppoe session (0 to disable)"}, "clear-on-disconnect"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"clear ip address and gateway on pppoe disconnect"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # authentication protocol def authentication prop_get('authentication') end # authentication protocol def authentication=(val) prop_set('authentication', val) end # username for ppp authentication def username prop_get('username') end # username for ppp authentication def username=(val) prop_set('username', val) end # password for ppp autentication def password prop_get('password') end # password for ppp autentication def password=(val) prop_set('password', val) end # automatically create default route pointing to peer def create_default_route prop_get('create-default-route') end # automatically create default route pointing to peer def create_default_route=(val) prop_set('create-default-route', val) end # metric of the default route created def default_route_metric prop_get('default-route-metric') end # metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end # desired access concentrator def access_concentrator prop_get('access-concentrator') end # desired access concentrator def access_concentrator=(val) prop_set('access-concentrator', val) end # desired service def service prop_get('service') end # desired service def service=(val) prop_set('service', val) end # automatically re-connect to peer def auto_connect prop_get('auto-connect') end # automatically re-connect to peer def auto_connect=(val) prop_set('auto-connect', val) end # delay (in seconds) before autmoatically re-connect def auto_connect_timeout prop_get('auto-connect-timeout') end # delay (in seconds) before autmoatically re-connect def auto_connect_timeout=(val) prop_set('auto-connect-timeout', val) end # idle timeout (in minutes) for the pppoe session (0 to disable) def idle_disconnect prop_get('idle-disconnect') end # idle timeout (in minutes) for the pppoe session (0 to disable) def idle_disconnect=(val) prop_set('idle-disconnect', val) end # clear ip address and gateway on pppoe disconnect def clear_on_disconnect prop_get('clear-on-disconnect') end # clear ip address and gateway on pppoe disconnect def clear_on_disconnect=(val) prop_set('clear-on-disconnect', val) end end # class Pppoe def pppoe @subclasses['pppoe'] ||= Pppoe.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class SdwanLinkSettings < ConfigClass def has_multiple_values? false end def _section :'sdwan-link-settings' end class UpstreamNat < ConfigClass def has_multiple_values? false end def _section :'upstream-nat' end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "help-string"=>"Upstream NAT IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"Upstream NAT address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # Upstream NAT IP address def ip_address prop_get('ip-address') end # Upstream NAT IP address def ip_address=(val) prop_set('ip-address', val) end # Upstream NAT address FQDN name configuration def fqdn prop_get('fqdn') end # Upstream NAT address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end class Ddns < ConfigClass def has_multiple_values? false end def _section :'ddns' end @props={} end # class Ddns def ddns @subclasses['ddns'] ||= Ddns.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable upstream NAT IP config"}} # Enable upstream NAT IP config def enable prop_get('enable') end # Enable upstream NAT IP config def enable=(val) prop_set('enable', val) end end # class UpstreamNat def upstream_nat @subclasses['upstream-nat'] ||= UpstreamNat.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable sdwan on this ethernet interface"}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Sdwan link characteristics", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/sdwan-interface-profile/entry/@name", "#config/shared/sdwan-interface-profile/entry/@name"]}} # Enable sdwan on this ethernet interface def enable prop_get('enable') end # Enable sdwan on this ethernet interface def enable=(val) prop_set('enable', val) end # Sdwan link characteristics def sdwan_interface_profile prop_get('sdwan-interface-profile') end # Sdwan link characteristics def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class SdwanLinkSettings def sdwan_link_settings @subclasses['sdwan-link-settings'] ||= SdwanLinkSettings.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024"}} def name prop_get('@name') end def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit1, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "untagged-sub-interface"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.ethernet.layer3.untagged-sub-interface-disable=True", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable untagged sub-interface"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit1, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit1, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Enable untagged sub-interface def untagged_sub_interface prop_get('untagged-sub-interface') end # Enable untagged sub-interface def untagged_sub_interface=(val) prop_set('untagged-sub-interface', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer3 def layer3 @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end @props={"port-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"port priority in LACP"}} # port priority in LACP def port_priority prop_get('port-priority') end # port priority in LACP def port_priority=(val) prop_set('port-priority', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["string('ethernet1/1')", "string('ethernet1/2')", "string('ethernet1/3')", "string('ethernet1/4')", "string('ethernet1/5')", "string('ethernet1/6')", "string('ethernet1/7')", "string('ethernet1/8')", "string('ethernet1/9')", "string('ethernet1/10')", "string('ethernet1/11')", "string('ethernet1/12')", "string('ethernet1/13')", "string('ethernet1/14')", "string('ethernet1/15')", "string('ethernet1/16')", "string('ethernet1/17')", "string('ethernet1/18')", "string('ethernet1/19')", "string('ethernet1/20')", "string('ethernet1/21')", "string('ethernet1/22')", "string('ethernet1/23')", "string('ethernet1/24')", "string('ethernet1/25')", "string('ethernet1/26')", "string('ethernet1/27')", "string('ethernet1/28')", "string('ethernet1/29')", "string('ethernet1/30')", "string('ethernet1/31')", "string('ethernet1/32')", "string('ethernet1/33')", "string('ethernet1/34')", "string('ethernet1/35')", "string('ethernet1/36')", "string('ethernet1/37')", "string('ethernet1/38')", "string('ethernet1/39')", "string('ethernet1/40')", "string('ethernet1/41')", "string('ethernet1/42')", "string('ethernet1/43')", "string('ethernet1/44')", "string('ethernet1/45')", "string('ethernet1/46')", "string('ethernet1/47')", "string('ethernet1/48')", "string('ethernet1/49')", "string('ethernet1/50')", "string('ethernet1/51')", "string('ethernet1/52')", "string('ethernet1/53')", "string('ethernet1/54')", "string('ethernet1/55')", "string('ethernet1/56')", "string('ethernet1/57')", "string('ethernet1/58')", "string('ethernet1/59')", "string('ethernet1/60')", "string('ethernet2/1')", "string('ethernet2/2')", "string('ethernet2/3')", "string('ethernet2/4')", "string('ethernet2/5')", "string('ethernet2/6')", "string('ethernet2/7')", "string('ethernet2/8')", "string('ethernet2/9')", "string('ethernet2/10')", "string('ethernet2/11')", "string('ethernet2/12')", "string('ethernet2/13')", "string('ethernet2/14')", "string('ethernet2/15')", "string('ethernet2/16')", "string('ethernet2/17')", "string('ethernet2/18')", "string('ethernet2/19')", "string('ethernet2/20')", "string('ethernet2/21')", "string('ethernet2/22')", "string('ethernet2/23')", "string('ethernet2/24')", "string('ethernet2/25')", "string('ethernet2/26')", "string('ethernet2/27')", "string('ethernet2/28')", "string('ethernet3/1')", "string('ethernet3/2')", "string('ethernet3/3')", "string('ethernet3/4')", "string('ethernet3/5')", "string('ethernet3/6')", "string('ethernet3/7')", "string('ethernet3/8')", "string('ethernet3/9')", "string('ethernet3/10')", "string('ethernet3/11')", "string('ethernet3/12')", "string('ethernet3/13')", "string('ethernet3/14')", "string('ethernet3/15')", "string('ethernet3/16')", "string('ethernet3/17')", "string('ethernet3/18')", "string('ethernet3/19')", "string('ethernet3/20')", "string('ethernet3/21')", "string('ethernet3/22')", "string('ethernet3/23')", "string('ethernet3/24')", "string('ethernet3/25')", "string('ethernet3/26')", "string('ethernet3/27')", "string('ethernet3/28')", "string('ethernet4/1')", "string('ethernet4/2')", "string('ethernet4/3')", "string('ethernet4/4')", "string('ethernet4/5')", "string('ethernet4/6')", "string('ethernet4/7')", "string('ethernet4/8')", "string('ethernet4/9')", "string('ethernet4/10')", "string('ethernet4/11')", "string('ethernet4/12')", "string('ethernet4/13')", "string('ethernet4/14')", "string('ethernet4/15')", "string('ethernet4/16')", "string('ethernet4/17')", "string('ethernet4/18')", "string('ethernet4/19')", "string('ethernet4/20')", "string('ethernet4/21')", "string('ethernet4/22')", "string('ethernet4/23')", "string('ethernet4/24')", "string('ethernet4/25')", "string('ethernet4/26')", "string('ethernet4/27')", "string('ethernet4/28')", "string('ethernet5/1')", "string('ethernet5/2')", "string('ethernet5/3')", "string('ethernet5/4')", "string('ethernet5/5')", "string('ethernet5/6')", "string('ethernet5/7')", "string('ethernet5/8')", "string('ethernet5/9')", "string('ethernet5/10')", "string('ethernet5/11')", "string('ethernet5/12')", "string('ethernet5/13')", "string('ethernet5/14')", "string('ethernet5/15')", "string('ethernet5/16')", "string('ethernet5/17')", "string('ethernet5/18')", "string('ethernet5/19')", "string('ethernet5/20')", "string('ethernet5/21')", "string('ethernet5/22')", "string('ethernet5/23')", "string('ethernet5/24')", "string('ethernet5/25')", "string('ethernet5/26')", "string('ethernet5/27')", "string('ethernet5/28')", "string('ethernet6/1')", "string('ethernet6/2')", "string('ethernet6/3')", "string('ethernet6/4')", "string('ethernet6/5')", "string('ethernet6/6')", "string('ethernet6/7')", "string('ethernet6/8')", "string('ethernet6/9')", "string('ethernet6/10')", "string('ethernet6/11')", "string('ethernet6/12')", "string('ethernet6/13')", "string('ethernet6/14')", "string('ethernet6/15')", "string('ethernet6/16')", "string('ethernet6/17')", "string('ethernet6/18')", "string('ethernet6/19')", "string('ethernet6/20')", "string('ethernet6/21')", "string('ethernet6/22')", "string('ethernet6/23')", "string('ethernet6/24')", "string('ethernet6/25')", "string('ethernet6/26')", "string('ethernet6/27')", "string('ethernet6/28')", "string('ethernet7/1')", "string('ethernet7/2')", "string('ethernet7/3')", "string('ethernet7/4')", "string('ethernet7/5')", "string('ethernet7/6')", "string('ethernet7/7')", "string('ethernet7/8')", "string('ethernet7/9')", "string('ethernet7/10')", "string('ethernet7/11')", "string('ethernet7/12')", "string('ethernet7/13')", "string('ethernet7/14')", "string('ethernet7/15')", "string('ethernet7/16')", "string('ethernet7/17')", "string('ethernet7/18')", "string('ethernet7/19')", "string('ethernet7/20')", "string('ethernet7/21')", "string('ethernet7/22')", "string('ethernet7/23')", "string('ethernet7/24')", "string('ethernet7/25')", "string('ethernet7/26')", "string('ethernet7/27')", "string('ethernet7/28')", "string('ethernet8/1')", "string('ethernet8/2')", "string('ethernet8/3')", "string('ethernet8/4')", "string('ethernet8/5')", "string('ethernet8/6')", "string('ethernet8/7')", "string('ethernet8/8')", "string('ethernet8/9')", "string('ethernet8/10')", "string('ethernet8/11')", "string('ethernet8/12')", "string('ethernet8/13')", "string('ethernet8/14')", "string('ethernet8/15')", "string('ethernet8/16')", "string('ethernet8/17')", "string('ethernet8/18')", "string('ethernet8/19')", "string('ethernet8/20')", "string('ethernet8/21')", "string('ethernet8/22')", "string('ethernet8/23')", "string('ethernet8/24')", "string('ethernet8/25')", "string('ethernet8/26')", "string('ethernet8/27')", "string('ethernet8/28')", "string('ethernet9/1')", "string('ethernet9/2')", "string('ethernet9/3')", "string('ethernet9/4')", "string('ethernet9/5')", "string('ethernet9/6')", "string('ethernet9/7')", "string('ethernet9/8')", "string('ethernet9/9')", "string('ethernet9/10')", "string('ethernet9/11')", "string('ethernet9/12')", "string('ethernet9/13')", "string('ethernet9/14')", "string('ethernet9/15')", "string('ethernet9/16')", "string('ethernet9/17')", "string('ethernet9/18')", "string('ethernet9/19')", "string('ethernet9/20')", "string('ethernet9/21')", "string('ethernet9/22')", "string('ethernet9/23')", "string('ethernet9/24')", "string('ethernet9/25')", "string('ethernet9/26')", "string('ethernet9/27')", "string('ethernet9/28')", "string('ethernet10/1')", "string('ethernet10/2')", "string('ethernet10/3')", "string('ethernet10/4')", "string('ethernet10/5')", "string('ethernet10/6')", "string('ethernet10/7')", "string('ethernet10/8')", "string('ethernet10/9')", "string('ethernet10/10')", "string('ethernet10/11')", "string('ethernet10/12')", "string('ethernet10/13')", "string('ethernet10/14')", "string('ethernet10/15')", "string('ethernet10/16')", "string('ethernet10/17')", "string('ethernet10/18')", "string('ethernet10/19')", "string('ethernet10/20')", "string('ethernet10/21')", "string('ethernet10/22')", "string('ethernet10/23')", "string('ethernet10/24')", "string('ethernet10/25')", "string('ethernet10/26')", "string('ethernet10/27')", "string('ethernet10/28')", "string('ethernet11/1')", "string('ethernet11/2')", "string('ethernet11/3')", "string('ethernet11/4')", "string('ethernet11/5')", "string('ethernet11/6')", "string('ethernet11/7')", "string('ethernet11/8')", "string('ethernet11/9')", "string('ethernet11/10')", "string('ethernet11/11')", "string('ethernet11/12')", "string('ethernet11/13')", "string('ethernet11/14')", "string('ethernet11/15')", "string('ethernet11/16')", "string('ethernet11/17')", "string('ethernet11/18')", "string('ethernet11/19')", "string('ethernet11/20')", "string('ethernet11/21')", "string('ethernet11/22')", "string('ethernet11/23')", "string('ethernet11/24')", "string('ethernet11/25')", "string('ethernet11/26')", "string('ethernet11/27')", "string('ethernet11/28')", "string('ethernet12/1')", "string('ethernet12/2')", "string('ethernet12/3')", "string('ethernet12/4')", "string('ethernet12/5')", "string('ethernet12/6')", "string('ethernet12/7')", "string('ethernet12/8')", "string('ethernet12/9')", "string('ethernet12/10')", "string('ethernet12/11')", "string('ethernet12/12')", "string('ethernet12/13')", "string('ethernet12/14')", "string('ethernet12/15')", "string('ethernet12/16')", "string('ethernet12/17')", "string('ethernet12/18')", "string('ethernet12/19')", "string('ethernet12/20')", "string('ethernet12/21')", "string('ethernet12/22')", "string('ethernet12/23')", "string('ethernet12/24')", "string('ethernet12/25')", "string('ethernet12/26')", "string('ethernet12/27')", "string('ethernet12/28')"]}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto"}, {"value"=>"10"}, {"value"=>"100"}, {"value"=>"1000"}, {"value"=>"10000"}, {"value"=>"40000"}, {"value"=>"100000"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link duplex", "enum"=>[{"value"=>"auto"}, {"value"=>"half"}, {"value"=>"full"}]}, "link-state"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link state", "enum"=> [{"value"=>"auto", "help-string"=>"Auto detect"}, {"value"=>"up", "help-string"=>"Force to up"}, {"value"=>"down", "help-string"=>"Force to down"}]}, "aggregate-group"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Aggregate interface group", "autocomplete"=>"yes", "memberof"=>["#interface/aggregate-ethernet/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # Interface link state def link_state prop_get('link-state') end # Interface link state def link_state=(val) prop_set('link-state', val) end # Aggregate interface group def aggregate_group prop_get('aggregate-group') end # Aggregate interface group def aggregate_group=(val) prop_set('aggregate-group', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ethernet def ethernet if @create_children @subclasses['ethernet'] ||= Ethernet.new(parent_instance: self, create_children: @create_children) else Ethernet.new(parent_instance: self) end end class AggregateEthernet < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-ethernet' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "fast-failover"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"passive", "help-string"=>"LACP mode", "enum"=>[{"value"=>"passive"}, {"value"=>"active"}]}, "transmission-rate"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"slow", "help-string"=>"periodic transition rate. N/A in passive mode", "enum"=>[{"value"=>"fast"}, {"value"=>"slow"}]}, "system-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"LACP system priority in system ID"}, "max-ports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"8", "help-string"=>"maximum number of physical ports bundled in the LAG"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def fast_failover prop_get('fast-failover') end def fast_failover=(val) prop_set('fast-failover', val) end # LACP mode def mode prop_get('mode') end # LACP mode def mode=(val) prop_set('mode', val) end # periodic transition rate. N/A in passive mode def transmission_rate prop_get('transmission-rate') end # periodic transition rate. N/A in passive mode def transmission_rate=(val) prop_set('transmission-rate', val) end # LACP system priority in system ID def system_priority prop_get('system-priority') end # LACP system priority in system ID def system_priority=(val) prop_set('system-priority', val) end # maximum number of physical ports bundled in the LAG def max_ports prop_get('max-ports') end # maximum number of physical ports bundled in the LAG def max_ports=(val) prop_set('max-ports', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class DecryptMirror < ConfigClass def has_multiple_values? false end def _section :'decrypt-mirror' end @props={} end # class DecryptMirror def decrypt_mirror @subclasses['decrypt-mirror'] ||= DecryptMirror.new(parent_instance: self, create_children: @create_children) end class VirtualWire < ConfigClass def has_multiple_values? false end def _section :'virtual-wire' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class IpClassifier < XML::ConfigClass def has_multiple_values? true end def _section :'ip-classifier' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpClassifier def ip_classifier if @create_children @subclasses['ip-classifier'] ||= IpClassifier.new(parent_instance: self, create_children: @create_children) else IpClassifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ae[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class VirtualWire def virtual_wire @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) end class Layer2 < ConfigClass def has_multiple_values? false end def _section :'layer2' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ae[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LACP pre-negotiation in HA passive state"}} # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "fast-failover"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"passive", "help-string"=>"LACP mode", "enum"=>[{"value"=>"passive"}, {"value"=>"active"}]}, "transmission-rate"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"slow", "help-string"=>"periodic transition rate. N/A in passive mode", "enum"=>[{"value"=>"fast"}, {"value"=>"slow"}]}, "system-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"LACP system priority in system ID"}, "max-ports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"8", "help-string"=>"maximum number of physical ports bundled in the LAG"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def fast_failover prop_get('fast-failover') end def fast_failover=(val) prop_set('fast-failover', val) end # LACP mode def mode prop_get('mode') end # LACP mode def mode=(val) prop_set('mode', val) end # periodic transition rate. N/A in passive mode def transmission_rate prop_get('transmission-rate') end # periodic transition rate. N/A in passive mode def transmission_rate=(val) prop_set('transmission-rate', val) end # LACP system priority in system ID def system_priority prop_get('system-priority') end # LACP system priority in system ID def system_priority=(val) prop_set('system-priority', val) end # maximum number of physical ports bundled in the LAG def max_ports prop_get('max-ports') end # maximum number of physical ports bundled in the LAG def max_ports=(val) prop_set('max-ports', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer2 def layer2 @subclasses['layer2'] ||= Layer2.new(parent_instance: self, create_children: @create_children) end class Layer3 < ConfigClass def has_multiple_values? false end def _section :'layer3' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LACP pre-negotiation in HA passive state"}} # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "fast-failover"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"passive", "help-string"=>"LACP mode", "enum"=>[{"value"=>"passive"}, {"value"=>"active"}]}, "transmission-rate"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"slow", "help-string"=>"periodic transition rate. N/A in passive mode", "enum"=>[{"value"=>"fast"}, {"value"=>"slow"}]}, "system-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"LACP system priority in system ID"}, "max-ports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"8", "help-string"=>"maximum number of physical ports bundled in the LAG"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def fast_failover prop_get('fast-failover') end def fast_failover=(val) prop_set('fast-failover', val) end # LACP mode def mode prop_get('mode') end # LACP mode def mode=(val) prop_set('mode', val) end # periodic transition rate. N/A in passive mode def transmission_rate prop_get('transmission-rate') end # periodic transition rate. N/A in passive mode def transmission_rate=(val) prop_set('transmission-rate', val) end # LACP system priority in system ID def system_priority prop_get('system-priority') end # LACP system priority in system ID def system_priority=(val) prop_set('system-priority', val) end # maximum number of physical ports bundled in the LAG def max_ports prop_get('max-ports') end # maximum number of physical ports bundled in the LAG def max_ports=(val) prop_set('max-ports', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ae[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "untagged-sub-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable untagged sub-interface"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Enable untagged sub-interface def untagged_sub_interface prop_get('untagged-sub-interface') end # Enable untagged sub-interface def untagged_sub_interface=(val) prop_set('untagged-sub-interface', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer3 def layer3 @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["string('ae1')", "string('ae2')", "string('ae3')", "string('ae4')", "string('ae5')", "string('ae6')", "string('ae7')", "string('ae8')", "string('ae9')", "string('ae10')", "string('ae11')", "string('ae12')", "string('ae13')", "string('ae14')", "string('ae15')", "string('ae16')", "string('ae17')", "string('ae18')", "string('ae19')", "string('ae20')", "string('ae21')", "string('ae22')", "string('ae23')", "string('ae24')", "string('ae25')", "string('ae26')", "string('ae27')", "string('ae28')", "string('ae29')", "string('ae30')", "string('ae31')", "string('ae32')", "string('ae32')"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AggregateEthernet def aggregate_ethernet if @create_children @subclasses['aggregate-ethernet'] ||= AggregateEthernet.new(parent_instance: self, create_children: @create_children) else AggregateEthernet.new(parent_instance: self) end end class Vlan < ConfigClass def has_multiple_values? false end def _section :'vlan' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface associated with this ARP entry", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name"]}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end # Interface associated with this ARP entry def interface prop_get('interface') end # Interface associated with this ARP entry def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Egress interface associated with this ARP entry", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name|#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name"]}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end # Egress interface associated with this ARP entry def interface prop_get('interface') end # Egress interface associated with this ARP entry def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(name(../..), '.')", "regex"=>"^([ 0-9a-zA-Z./_-])+$", "help-string"=>"alphanumeric string [ 0-9a-zA-Z./_-]"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z./_-] def name prop_get('@name') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Vlan def vlan @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) end class Loopback < ConfigClass def has_multiple_values? false end def _section :'loopback' end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=> "IP address or address object name(netmask is not allowed for loopback)", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address or address object name(netmask is not allowed for loopback) def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=> "IP address or address object name(netmask is not allowed for loopback)", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address or address object name(netmask is not allowed for loopback) def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"string('loopback.')", "regex"=>"^((loopback\\.)?([1-9][0-9]{0,3}))$", "help-string"=>"numeric suffix [1-9999]"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # numeric suffix [1-9999] def name prop_get('@name') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Loopback def loopback @subclasses['loopback'] ||= Loopback.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"string('tunnel.')", "regex"=>"^((tunnel\\.)?([1-9][0-9]{0,3}))$", "help-string"=>"numeric string [1-9999]"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}, "link-tag"=> {"node-type"=>"element", "optional"=>"yes", "hidden"=>"yes", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["/config/shared/tag/entry/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/tag/entry/@name", "##/predefined/tag/entry/@name", "##/shared/tag/entry/@name", "#config/shared/tag/entry/@name", "#myentry(template)/variable/entry[type/link-tag]/@name"]}} # numeric string [1-9999] def name prop_get('@name') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"9", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes') and (layer3/sdwan-link-settings/enable = 'yes')]/@name", "#myentry(devices)/network/tunnel/ipsec/entry[not(disabled = 'yes')]/tunnel-interface", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry[not(@name='$ifname')]/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"string('sdwan.')", "regex"=>"^((sdwan\\.)?([1-9][0-9]{0,3}))$", "help-string"=>"numeric string [1-9999]"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}, "cluster-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"64"}, "link-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["/config/shared/tag/entry/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/tag/entry/@name", "##/predefined/tag/entry/@name", "##/shared/tag/entry/@name", "#config/shared/tag/entry/@name", "#myentry(template)/variable/entry[type/link-tag]/@name"]}, "allow-saas-monitor"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "hidden"=>"yes", "help-string"=>"Allow sending probe packets for saas monitoring"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "hidden"=>"yes", "help-string"=>"Metric for relative route preference"}} # numeric string [1-9999] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def cluster_name prop_get('cluster-name') end def cluster_name=(val) prop_set('cluster-name', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end # Allow sending probe packets for saas monitoring def allow_saas_monitor prop_get('allow-saas-monitor') end # Allow sending probe packets for saas monitoring def allow_saas_monitor=(val) prop_set('allow-saas-monitor', val) end # Metric for relative route preference def metric prop_get('metric') end # Metric for relative route preference def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={} end # class Interface def interface @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) end class Ike__4 < ConfigClass def has_multiple_values? false end def _section :'ike__4' end class Gateway < XML::ConfigClass def has_multiple_values? true end def _section :'gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PeerAddress < XML::ConfigClass def has_multiple_values? true end def _section :'peer-address' end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={} end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "help-string"=>"peer gateway has static IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[('$ipv6'='yes' and contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (not('$ipv6'='yes') and ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "loose-membership"=>"yes", "help-string"=>"peer gateway FQDN name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # peer gateway has static IP address def ip prop_get('ip') end # peer gateway has static IP address def ip=(val) prop_set('ip', val) end # peer gateway FQDN name def fqdn prop_get('fqdn') end # peer gateway FQDN name def fqdn=(val) prop_set('fqdn', val) end end # class PeerAddress def peer_address if @create_children @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) else PeerAddress.new(parent_instance: self) end end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(template)/variable/entry[type/interface]/@name"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/$ifname/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/$ifname/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.vpn-srcaddr.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name[not('$ipv6'='yes')]", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name['$ipv6'='yes']"]}} # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerId < ConfigClass def has_multiple_values? false end def _section :'peer-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Peer ID string", "regex"=> "^(.+\\@[\\*a-zA-Z0-9.-]+)$|^([\\*$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "matching"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"exact", "help-string"=> "Enable peer ID wildcard match for certificate authentication", "enum"=> [{"value"=>"exact", "help-string"=>"Exact match"}, {"value"=>"wildcard", "help-string"=>"Wildcard"}]}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Peer ID string def id prop_get('id') end # Peer ID string def id=(val) prop_set('id', val) end # Enable peer ID wildcard match for certificate authentication def matching prop_get('matching') end # Enable peer ID wildcard match for certificate authentication def matching=(val) prop_set('matching', val) end end # class PeerId def peer_id @subclasses['peer-id'] ||= PeerId.new(parent_instance: self, create_children: @create_children) end class LocalId < ConfigClass def has_multiple_values? false end def _section :'local-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Local ID string", "regex"=> "^(.+\\@[a-zA-Z0-9.-]+)$|^([$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Local ID string def id prop_get('id') end # Local ID string def id=(val) prop_set('id', val) end end # class LocalId def local_id @subclasses['local-id'] ||= LocalId.new(parent_instance: self, create_children: @create_children) end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end class PreSharedKey < ConfigClass def has_multiple_values? false end def _section :'pre-shared-key' end @props={"key"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"the string used as pre-shared key", "maxlen"=>"255", "encrypt"=>"yes", "skip-commit-validation"=>"yes"}} # the string used as pre-shared key def key prop_get('key') end # the string used as pre-shared key def key=(val) prop_set('key', val) end end # class PreSharedKey def pre_shared_key @subclasses['pre-shared-key'] ||= PreSharedKey.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class LocalCertificate < ConfigClass def has_multiple_values? false end def _section :'local-certificate' end class HashAndUrl < ConfigClass def has_multiple_values? false end def _section :'hash-and-url' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Use hash-and-url for local certificate", "default"=>"no"}, "base-url"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "regex"=>"^http://.+$", "help-string"=> "The host and directory part of URL for local certificates(http only)"}} # Use hash-and-url for local certificate def enable prop_get('enable') end # Use hash-and-url for local certificate def enable=(val) prop_set('enable', val) end # The host and directory part of URL for local certificates(http only) def base_url prop_get('base-url') end # The host and directory part of URL for local certificates(http only) def base_url=(val) prop_set('base-url', val) end end # class HashAndUrl def hash_and_url @subclasses['hash-and-url'] ||= HashAndUrl.new(parent_instance: self, create_children: @create_children) end @props={"name"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Local certificate name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsysname']/certificate/entry[(private-key) and not(status='revoked')]/@name", "#config/shared/certificate/entry[(private-key) and not(status='revoked')]/@name", "#config/shared/certificate/entry[(private-key) and not(status='revoked')]/@name"]}} # Local certificate name def name prop_get('name') end # Local certificate name def name=(val) prop_set('name', val) end end # class LocalCertificate def local_certificate @subclasses['local-certificate'] ||= LocalCertificate.new(parent_instance: self, create_children: @create_children) end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Profile for certificate valdiation during IKE negotiation", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}, "use-management-as-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Use management interface IP as source to retrieve http certificates"}, "strict-validation-revocation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable strict validation of peer's extended key use"}, "allow-id-payload-mismatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Permit peer identification and certificate payload identification mismatch"}} # Profile for certificate valdiation during IKE negotiation def certificate_profile prop_get('certificate-profile') end # Profile for certificate valdiation during IKE negotiation def certificate_profile=(val) prop_set('certificate-profile', val) end # Use management interface IP as source to retrieve http certificates def use_management_as_source prop_get('use-management-as-source') end # Use management interface IP as source to retrieve http certificates def use_management_as_source=(val) prop_set('use-management-as-source', val) end # Enable strict validation of peer's extended key use def strict_validation_revocation prop_get('strict-validation-revocation') end # Enable strict validation of peer's extended key use def strict_validation_revocation=(val) prop_set('strict-validation-revocation', val) end # Permit peer identification and certificate payload identification mismatch def allow_id_payload_mismatch prop_get('allow-id-payload-mismatch') end # Permit peer identification and certificate payload identification mismatch def allow_id_payload_mismatch=(val) prop_set('allow-id-payload-mismatch', val) end end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class Ikev1 < ConfigClass def has_multiple_values? false end def _section :'ikev1' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable Dead-Peer-Detection", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}, "retry"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"number of retries before disconnection", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable Dead-Peer-Detection def enable prop_get('enable') end # Enable Dead-Peer-Detection def enable=(val) prop_set('enable', val) end # sending interval for probing packets (in seconds) def interval prop_get('interval') end # sending interval for probing packets (in seconds) def interval=(val) prop_set('interval', val) end # number of retries before disconnection def retry prop_get('retry') end # number of retries before disconnection def retry=(val) prop_set('retry', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"exchange-mode"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"Exchange mode", "default"=>"auto", "optional"=>"yes", "enum"=> [{"value"=>"auto", "help-string"=>"choose IKE exchange mode automatically"}, {"value"=>"main", "help-string"=>"use main mode"}, {"value"=>"aggressive", "help-string"=>"use aggressive mode"}]}, "ike-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "loose-membership"=>"yes", "help-string"=>"IKE SA crypto profile name", "default"=>"default", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ike-crypto-profiles/entry/@name"]}, "commit-bit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send commit bit", "disabled"=>"yes"}, "initial-contact"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send initial contact", "disabled"=>"yes"}} # Exchange mode def exchange_mode prop_get('exchange-mode') end # Exchange mode def exchange_mode=(val) prop_set('exchange-mode', val) end # IKE SA crypto profile name def ike_crypto_profile prop_get('ike-crypto-profile') end # IKE SA crypto profile name def ike_crypto_profile=(val) prop_set('ike-crypto-profile', val) end # Send commit bit def commit_bit prop_get('commit-bit') end # Send commit bit def commit_bit=(val) prop_set('commit-bit', val) end # Send initial contact def initial_contact prop_get('initial-contact') end # Send initial contact def initial_contact=(val) prop_set('initial-contact', val) end end # class Ikev1 def ikev1 @subclasses['ikev1'] ||= Ikev1.new(parent_instance: self, create_children: @create_children) end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable sending empty information liveness check message", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"delay interval before sending probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable sending empty information liveness check message def enable prop_get('enable') end # Enable sending empty information liveness check message def enable=(val) prop_set('enable', val) end # delay interval before sending probing packets (in seconds) def interval prop_get('interval') end # delay interval before sending probing packets (in seconds) def interval=(val) prop_set('interval', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"ike-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "loose-membership"=>"yes", "help-string"=>"IKE SA crypto profile name", "default"=>"default", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ike-crypto-profiles/entry/@name"]}, "require-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Require cookie", "default"=>"no"}, "send-peer-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send peer ID", "default"=>"yes", "disabled"=>"yes"}} # IKE SA crypto profile name def ike_crypto_profile prop_get('ike-crypto-profile') end # IKE SA crypto profile name def ike_crypto_profile=(val) prop_set('ike-crypto-profile', val) end # Require cookie def require_cookie prop_get('require-cookie') end # Require cookie def require_cookie=(val) prop_set('require-cookie', val) end # Send peer ID def send_peer_id prop_get('send-peer-id') end # Send peer ID def send_peer_id=(val) prop_set('send-peer-id', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={"version"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"IKE protocol version", "default"=>"ikev1", "enum"=> [{"value"=>"ikev1", "help-string"=>"IKEv1 only mode"}, {"value"=>"ikev2", "help-string"=>"IKEv2 only mode"}, {"value"=>"ikev2-preferred", "help-string"=>"IKEv2 preferred mode"}]}} # IKE protocol version def version prop_get('version') end # IKE protocol version def version=(val) prop_set('version', val) end end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class ProtocolCommon < ConfigClass def has_multiple_values? false end def _section :'protocol-common' end class NatTraversal < ConfigClass def has_multiple_values? false end def _section :'nat-traversal' end @props={"enable"=> {"node-type"=>"element", "help-string"=>"Enable NAT-Traversal", "type"=>"bool", "default"=>"no"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for NAT keep-alive packets (in seconds)", "type"=>"rangedint", "min"=>"10", "max"=>"3600", "default"=>"20"}, "udp-checksum-enable"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enable UDP checksum", "type"=>"bool", "default"=>"no"}} # Enable NAT-Traversal def enable prop_get('enable') end # Enable NAT-Traversal def enable=(val) prop_set('enable', val) end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Enable UDP checksum def udp_checksum_enable prop_get('udp-checksum-enable') end # Enable UDP checksum def udp_checksum_enable=(val) prop_set('udp-checksum-enable', val) end end # class NatTraversal def nat_traversal @subclasses['nat-traversal'] ||= NatTraversal.new(parent_instance: self, create_children: @create_children) end class Fragmentation < ConfigClass def has_multiple_values? false end def _section :'fragmentation' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable IKE fragmentation", "default"=>"no"}} # Enable IKE fragmentation def enable prop_get('enable') end # Enable IKE fragmentation def enable=(val) prop_set('enable', val) end end # class Fragmentation def fragmentation @subclasses['fragmentation'] ||= Fragmentation.new(parent_instance: self, create_children: @create_children) end @props={"passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable passive mode (responder only)", "default"=>"no"}} # Enable passive mode (responder only) def passive_mode prop_get('passive-mode') end # Enable passive mode (responder only) def passive_mode=(val) prop_set('passive-mode', val) end end # class ProtocolCommon def protocol_common @subclasses['protocol-common'] ||= ProtocolCommon.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the IKE gateway"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the IKE gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the IKE gateway def disabled prop_get('disabled') end # Disable the IKE gateway def disabled=(val) prop_set('disabled', val) end # use IPv6 for the IKE gateway def ipv6 prop_get('ipv6') end # use IPv6 for the IKE gateway def ipv6=(val) prop_set('ipv6', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gateway def gateway if @create_children @subclasses['gateway'] ||= Gateway.new(parent_instance: self, create_children: @create_children) else Gateway.new(parent_instance: self) end end class CryptoProfiles < ConfigClass def has_multiple_values? false end def _section :'crypto-profiles' end class IkeCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ike-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 56-bit strength"}, {"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 112-bit strength"}, {"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Hash < XML::ConfigClass def has_multiple_values? true end def _section :'hash' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha1", "enum"=> [{"value"=>"non-auth", "help-string"=>"Integrity check is unnecessary when AESGCM is chosen"}, {"value"=>"md5", "prune-on"=>"fips-mode", "help-string"=>"below 80-bit strength"}, {"value"=>"sha1", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hash def hash if @create_children @subclasses['hash'] ||= Hash.new(parent_instance: self, create_children: @create_children) else Hash.new(parent_instance: self) end end class DhGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dh-group' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"group2", "enum"=> [{"value"=>"group1", "prune-on"=>"fips-mode", "help-string"=>"768-bit MODP Group"}, {"value"=>"group2", "prune-on"=>"fips-mode", "help-string"=>"1024-bit MODP Group, NIST rating 80-bit strength"}, {"value"=>"group5", "prune-on"=>"fips-mode", "help-string"=>"1536-bit MODP Group"}, {"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhGroup def dh_group if @create_children @subclasses['dh-group'] ||= DhGroup.new(parent_instance: self, create_children: @create_children) else DhGroup.new(parent_instance: self) end end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"8"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "authentication-multiple"=> {"node-type"=>"element", "help-string"=> "IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled", "type"=>"rangedint", "max"=>"50", "optional"=>"yes", "default"=>"0"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple prop_get('authentication-multiple') end # IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple=(val) prop_set('authentication-multiple', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IkeCryptoProfiles def ike_crypto_profiles if @create_children @subclasses['ike-crypto-profiles'] ||= IkeCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IkeCryptoProfiles.new(parent_instance: self) end end class IpsecCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 56-bit strength"}, {"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 112-bit strength"}, {"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-ccm", "help-string"=>"NIST rating 128-bit strength, AES CCM 16"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}, {"value"=>"null", "prune-on"=>"fips-mode"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"sha1", "complete-handler"=>"esp-auth-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha1", "enum"=> [{"value"=>"md5", "prune-on"=>"fips-mode", "help-string"=>"below 80-bit strength"}, {"value"=>"sha1", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end class Lifesize < XML::ConfigClass def has_multiple_values? true end def _section :'lifesize' end @props={"kb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in kilobytes(KB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "mb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in megabytes(MB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "gb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in gigabytes(GB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "tb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in terabytes(TB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}} # specify lifesize in kilobytes(KB) def kb prop_get('kb') end # specify lifesize in kilobytes(KB) def kb=(val) prop_set('kb', val) end # specify lifesize in megabytes(MB) def mb prop_get('mb') end # specify lifesize in megabytes(MB) def mb=(val) prop_set('mb', val) end # specify lifesize in gigabytes(GB) def gb prop_get('gb') end # specify lifesize in gigabytes(GB) def gb=(val) prop_set('gb', val) end # specify lifesize in terabytes(TB) def tb prop_get('tb') end # specify lifesize in terabytes(TB) def tb=(val) prop_set('tb', val) end end # class Lifesize def lifesize if @create_children @subclasses['lifesize'] ||= Lifesize.new(parent_instance: self, create_children: @create_children) else Lifesize.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "dh-group"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"phase-2 DH group (PFS DH group)", "optional"=>"yes", "default"=>"group2", "enum"=> [{"value"=>"no-pfs", "prune-on"=>"fips-mode", "help-string"=>"disable PFS feature"}, {"value"=>"group1", "prune-on"=>"fips-mode", "help-string"=>"768-bit MODP Group"}, {"value"=>"group2", "prune-on"=>"fips-mode", "help-string"=>"1024-bit MODP Group, NIST rating 80-bit strength"}, {"value"=>"group5", "prune-on"=>"fips-mode", "help-string"=>"1536-bit MODP Group"}, {"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # phase-2 DH group (PFS DH group) def dh_group prop_get('dh-group') end # phase-2 DH group (PFS DH group) def dh_group=(val) prop_set('dh-group', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpsecCryptoProfiles def ipsec_crypto_profiles if @create_children @subclasses['ipsec-crypto-profiles'] ||= IpsecCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IpsecCryptoProfiles.new(parent_instance: self) end end class GlobalProtectAppCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-app-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha1", "enum"=>[{"value"=>"sha1", "help-string"=>"NIST rating 128-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectAppCryptoProfiles def global_protect_app_crypto_profiles if @create_children @subclasses['global-protect-app-crypto-profiles'] ||= GlobalProtectAppCryptoProfiles.new(parent_instance: self, create_children: @create_children) else GlobalProtectAppCryptoProfiles.new(parent_instance: self) end end @props={} end # class CryptoProfiles def crypto_profiles @subclasses['crypto-profiles'] ||= CryptoProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ike__4 def ike__4 @subclasses['ike__4'] ||= Ike__4.new(parent_instance: self, create_children: @create_children) end class Tunnel__5 < ConfigClass def has_multiple_values? false end def _section :'tunnel__5' end class Hop < XML::ConfigClass def has_multiple_values? true end def _section :'hop' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Tunnel peer IP address"}} # Tunnel peer IP address def ip prop_get('ip') end # Tunnel peer IP address def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to termate tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address if interface has multiple addresses"}} # Interface to termate tunnel def interface prop_get('interface') end # Interface to termate tunnel def interface=(val) prop_set('interface', val) end # IP address if interface has multiple addresses def ip prop_get('ip') end # IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Tunnel interface to bind", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(template)/variable/entry[type/interface]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Tunnel interface to bind def tunnel_interface prop_get('tunnel-interface') end # Tunnel interface to bind def tunnel_interface=(val) prop_set('tunnel-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Hop def hop if @create_children @subclasses['hop'] ||= Hop.new(parent_instance: self, create_children: @create_children) else Hop.new(parent_instance: self) end end class Gre < XML::ConfigClass def has_multiple_values? true end def _section :'gre' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to terminate tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(template)/variable/entry[type/interface]/@name"]}, "ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.tunnel.gre.local-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Interface to terminate tunnel def interface prop_get('interface') end # Interface to terminate tunnel def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Peer IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Peer IP address def ip prop_get('ip') end # Peer IP address def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class KeepAlive < ConfigClass def has_multiple_values? false end def _section :'keep-alive' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable tunnel monitoring on this tunnel"}, "interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"50", "default"=>"10", "help-string"=>"Interval"}, "retry"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"64", "default"=>"3", "help-string"=>"Retry"}, "hold-timer"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"64", "default"=>"5", "help-string"=>"Hold timer"}} # Enable tunnel monitoring on this tunnel def enable prop_get('enable') end # Enable tunnel monitoring on this tunnel def enable=(val) prop_set('enable', val) end # Interval def interval prop_get('interval') end # Interval def interval=(val) prop_set('interval', val) end # Retry def retry prop_get('retry') end # Retry def retry=(val) prop_set('retry', val) end # Hold timer def hold_timer prop_get('hold-timer') end # Hold timer def hold_timer=(val) prop_set('hold-timer', val) end end # class KeepAlive def keep_alive @subclasses['keep-alive'] ||= KeepAlive.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the GRE tunnel"}, "copy-tos"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Copy IP TOS bits from inner packet to GRE packet"}, "ttl"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"255", "default"=>"64", "help-string"=>"TTL"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"to apply GRE tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(template)/variable/entry[type/interface]/@name"]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the GRE tunnel def disabled prop_get('disabled') end # Disable the GRE tunnel def disabled=(val) prop_set('disabled', val) end # Copy IP TOS bits from inner packet to GRE packet def copy_tos prop_get('copy-tos') end # Copy IP TOS bits from inner packet to GRE packet def copy_tos=(val) prop_set('copy-tos', val) end # TTL def ttl prop_get('ttl') end # TTL def ttl=(val) prop_set('ttl', val) end # to apply GRE tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply GRE tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gre def gre if @create_children @subclasses['gre'] ||= Gre.new(parent_instance: self, create_children: @create_children) else Gre.new(parent_instance: self) end end class Ipsec < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TunnelMonitor < ConfigClass def has_multiple_values? false end def _section :'tunnel-monitor' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Enable tunnel monitoring on this tunnel"}, "destination-ip"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Destination IP to send ICMP probe", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "proxy-id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Which proxy-id (or proxy-id-v6) the monitoring traffic will use", "autocomplete"=>"yes", "memberof"=> ["../../../auto-key/proxy-id/entry/@name[not(contains('$ipv6', ':'))]", "../../../auto-key/proxy-id-v6/entry/@name[contains('$ipv6', ':')]"]}, "tunnel-monitor-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"monitoring action", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/monitor-profile/entry/@name"]}} # Enable tunnel monitoring on this tunnel def enable prop_get('enable') end # Enable tunnel monitoring on this tunnel def enable=(val) prop_set('enable', val) end # Destination IP to send ICMP probe def destination_ip prop_get('destination-ip') end # Destination IP to send ICMP probe def destination_ip=(val) prop_set('destination-ip', val) end # Which proxy-id (or proxy-id-v6) the monitoring traffic will use def proxy_id prop_get('proxy-id') end # Which proxy-id (or proxy-id-v6) the monitoring traffic will use def proxy_id=(val) prop_set('proxy-id', val) end # monitoring action def tunnel_monitor_profile prop_get('tunnel-monitor-profile') end # monitoring action def tunnel_monitor_profile=(val) prop_set('tunnel-monitor-profile', val) end end # class TunnelMonitor def tunnel_monitor @subclasses['tunnel-monitor'] ||= TunnelMonitor.new(parent_instance: self, create_children: @create_children) end class AutoKey < ConfigClass def has_multiple_values? false end def _section :'auto-key' end class IkeGateway < XML::ConfigClass def has_multiple_values? true end def _section :'ike-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"IKE gateway name", "autocomplete"=>"yes", "memberof"=> ["#network/ike/gateway/entry[(ipv6='$ipv6') or (not('$ipv6') and not(ipv6='yes')) or (not(ipv6) and not('$ipv6'='yes'))]/@name"]}, "as-nexthop"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "optional"=>"yes", "help-string"=> "manually register this IKE gateway as the given nexthop value"}} # IKE gateway name def name prop_get('@name') end # manually register this IKE gateway as the given nexthop value def as_nexthop prop_get('as-nexthop') end # manually register this IKE gateway as the given nexthop value def as_nexthop=(val) prop_set('as-nexthop', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IkeGateway def ike_gateway if @create_children @subclasses['ike-gateway'] ||= IkeGateway.new(parent_instance: self, create_children: @create_children) else IkeGateway.new(parent_instance: self) end end class ProxyId < XML::ConfigClass def has_multiple_values? true end def _section :'proxy-id' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={"number"=> {"node-type"=>"element", "help-string"=>"IP protocol number", "type"=>"rangedint", "min"=>"1", "max"=>"254", "no-default"=>"yes"}} # IP protocol number def number prop_get('number') end # IP protocol number def number=(val) prop_set('number', val) end end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents local network", "type"=>"multiple", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "remote"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents remote network", "type"=>"multiple", "ipv4-only"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # IP subnet or IP address represents local network def local prop_get('local') end # IP subnet or IP address represents local network def local=(val) prop_set('local', val) end # IP subnet or IP address represents remote network def remote prop_get('remote') end # IP subnet or IP address represents remote network def remote=(val) prop_set('remote', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProxyId def proxy_id if @create_children @subclasses['proxy-id'] ||= ProxyId.new(parent_instance: self, create_children: @create_children) else ProxyId.new(parent_instance: self) end end class ProxyIdV6 < XML::ConfigClass def has_multiple_values? true end def _section :'proxy-id-v6' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={"number"=> {"node-type"=>"element", "help-string"=>"IP protocol number", "type"=>"rangedint", "min"=>"1", "max"=>"254", "no-default"=>"yes"}} # IP protocol number def number prop_get('number') end # IP protocol number def number=(val) prop_set('number', val) end end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents local network", "type"=>"multiple", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "remote"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents remote network", "type"=>"multiple", "ipv6-only"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # IP subnet or IP address represents local network def local prop_get('local') end # IP subnet or IP address represents local network def local=(val) prop_set('local', val) end # IP subnet or IP address represents remote network def remote prop_get('remote') end # IP subnet or IP address represents remote network def remote=(val) prop_set('remote', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProxyIdV6 def proxy_id_v6 if @create_children @subclasses['proxy-id-v6'] ||= ProxyIdV6.new(parent_instance: self, create_children: @create_children) else ProxyIdV6.new(parent_instance: self) end end @props={"ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "loose-membership"=>"yes", "help-string"=>"IPSec crypto profile name", "optional"=>"yes", "default"=>"default", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ipsec-crypto-profiles/entry/@name"]}} # IPSec crypto profile name def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # IPSec crypto profile name def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end end # class AutoKey def auto_key @subclasses['auto-key'] ||= AutoKey.new(parent_instance: self, create_children: @create_children) end class ManualKey < ConfigClass def has_multiple_values? false end def _section :'manual-key' end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Tunnel peer IP address"}} # Tunnel peer IP address def ip prop_get('ip') end # Tunnel peer IP address def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to termate tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(template)/variable/entry[type/interface]/@name"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/$ifname/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/$ifname/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.vpn-srcaddr.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name[not('$ipv6'='yes')]", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name['$ipv6'='yes']"]}} # Interface to termate tunnel def interface prop_get('interface') end # Interface to termate tunnel def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections", "regex"=>"^([0-9a-fA-F]{8}-){3}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections", "regex"=>"^([0-9a-fA-F]{8}-){4}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections", "regex"=>"^([0-9a-fA-F]{8}-){7}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections", "regex"=>"^([0-9a-fA-F]{8}-){11}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections", "regex"=>"^([0-9a-fA-F]{8}-){15}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end class None__6 < ConfigClass def has_multiple_values? false end def _section :'none__6' end @props={} end # class None__6 def none__6 @subclasses['none__6'] ||= None__6.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"algorithm"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"des", "prune-on"=>"cc-only-mode", "help-string"=>"key is 64 bit"}, {"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"key is 192 bit"}, {"value"=>"aes-128-cbc", "help-string"=>"key is 128 bit"}, {"value"=>"aes-192-cbc", "help-string"=>"key is 192 bit"}, {"value"=>"aes-256-cbc", "help-string"=>"key is 256 bit"}, {"value"=>"null", "prune-on"=>"fips-mode"}]}, "key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=> "hex format xxxxxxxx[-xxxxxxxx]... total number of sections: des: 2, 3des: 6, aes-128-cbc: 4, aes-192-cbc: 6, aes-256-cbc: 8", "regex"=> "^([0-9a-fA-F]{8}-[0-9a-fA-F]{8}-){0,3}[0-9a-fA-F]{8}-[0-9a-fA-F]{8}$"}} def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: des: 2, 3des: 6, aes-128-cbc: 4, aes-192-cbc: 6, aes-256-cbc: 8 def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: des: 2, 3des: 6, aes-128-cbc: 4, aes-192-cbc: 6, aes-256-cbc: 8 def key=(val) prop_set('key', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections", "regex"=>"^([0-9a-fA-F]{8}-){3}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections", "regex"=>"^([0-9a-fA-F]{8}-){4}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections", "regex"=>"^([0-9a-fA-F]{8}-){7}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections", "regex"=>"^([0-9a-fA-F]{8}-){11}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections", "regex"=>"^([0-9a-fA-F]{8}-){15}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end @props={"local-spi"=> {"node-type"=>"element", "help-string"=> "Outbound SPI, hex format xxxxxxxx. range 00001000 to 1FFFFFFF", "type"=>"string", "regex"=> "^(0000[1-9a-fA-F]{1}[0-9a-fA-F]{3}|000[1-9a-fA-F]{1}[0-9a-fA-F]{4}|00[1-9a-fA-F]{1}[0-9a-fA-F]{5}|0[1-9a-fA-F]{1}[0-9a-fA-F]{6}|1[0-9a-fA-F]{7})$"}, "remote-spi"=> {"node-type"=>"element", "help-string"=>"Inbound SPI, hex format xxxxxxxx.", "type"=>"string", "regex"=>"^([0-9a-fA-F]{8})$"}} # Outbound SPI, hex format xxxxxxxx. range 00001000 to 1FFFFFFF def local_spi prop_get('local-spi') end # Outbound SPI, hex format xxxxxxxx. range 00001000 to 1FFFFFFF def local_spi=(val) prop_set('local-spi', val) end # Inbound SPI, hex format xxxxxxxx. def remote_spi prop_get('remote-spi') end # Inbound SPI, hex format xxxxxxxx. def remote_spi=(val) prop_set('remote-spi', val) end end # class ManualKey def manual_key @subclasses['manual-key'] ||= ManualKey.new(parent_instance: self, create_children: @create_children) end class GlobalProtectSatellite < ConfigClass def has_multiple_values? false end def _section :'global-protect-satellite' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact local IPv6 address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/$ifname/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name"]}} # specify exact IP address if interface has multiple addresses def ipv4 prop_get('ipv4') end # specify exact IP address if interface has multiple addresses def ipv4=(val) prop_set('ipv4', val) end # specify exact local IPv6 address if interface has multiple addresses def ipv6 prop_get('ipv6') end # specify exact local IPv6 address if interface has multiple addresses def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.tunnel.ipsec.floating-ip.satd-floating-ip-check.ipv4-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IPv6 address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IP address in HA Active-Active configuration def ipv4 prop_get('ipv4') end # Floating IP address in HA Active-Active configuration def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address in HA Active-Active configuration def ipv6 prop_get('ipv6') end # Floating IPv6 address in HA Active-Active configuration def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to communicate with Portal", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}} # Interface to communicate with Portal def interface prop_get('interface') end # Interface to communicate with Portal def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PublishRoutes < XML::ConfigClass def has_multiple_values? true end def _section :'publish-routes' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "subnet-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PublishRoutes def publish_routes if @create_children @subclasses['publish-routes'] ||= PublishRoutes.new(parent_instance: self, create_children: @create_children) else PublishRoutes.new(parent_instance: self) end end class PublishConnectedRoutes < ConfigClass def has_multiple_values? false end def _section :'publish-connected-routes' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable publishing of connected and static routes"}} # Enable publishing of connected and static routes def enable prop_get('enable') end # Enable publishing of connected and static routes def enable=(val) prop_set('enable', val) end end # class PublishConnectedRoutes def publish_connected_routes @subclasses['publish-connected-routes'] ||= PublishConnectedRoutes.new(parent_instance: self, create_children: @create_children) end class ExternalCa < ConfigClass def has_multiple_values? false end def _section :'external-ca' end @props={"local-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"GlobalProtect satellite certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Profile for authenticating GlobalProtect gateway certificates", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}} # GlobalProtect satellite certificate file name def local_certificate prop_get('local-certificate') end # GlobalProtect satellite certificate file name def local_certificate=(val) prop_set('local-certificate', val) end # Profile for authenticating GlobalProtect gateway certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating GlobalProtect gateway certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class ExternalCa def external_ca @subclasses['external-ca'] ||= ExternalCa.new(parent_instance: self, create_children: @create_children) end @props={"portal-address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"GlobalProtect portal address"}, "ipv6-preferred"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Prefer to register to portal in ipv6. Only applicable to fqdn portal-address"}} # GlobalProtect portal address def portal_address prop_get('portal-address') end # GlobalProtect portal address def portal_address=(val) prop_set('portal-address', val) end # Prefer to register to portal in ipv6. Only applicable to fqdn portal-address def ipv6_preferred prop_get('ipv6-preferred') end # Prefer to register to portal in ipv6. Only applicable to fqdn portal-address def ipv6_preferred=(val) prop_set('ipv6-preferred', val) end end # class GlobalProtectSatellite def global_protect_satellite @subclasses['global-protect-satellite'] ||= GlobalProtectSatellite.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the IPSec tunnel"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the IPSec tunnel"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"to apply IPSec VPN tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "anti-replay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable Anti-Replay check on this tunnel"}, "copy-tos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Copy IP TOS bits from inner packet to IPSec packet (not recommended)"}, "copy-flow-label"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Copy IPv6 flow label for 6in6 tunnel from inner packet to IPSec packet (not recommended)"}, "enable-gre-encapsulation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"allow GRE over IPSec"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the IPSec tunnel def disabled prop_get('disabled') end # Disable the IPSec tunnel def disabled=(val) prop_set('disabled', val) end # use IPv6 for the IPSec tunnel def ipv6 prop_get('ipv6') end # use IPv6 for the IPSec tunnel def ipv6=(val) prop_set('ipv6', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end # to apply IPSec VPN tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply IPSec VPN tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end # Enable Anti-Replay check on this tunnel def anti_replay prop_get('anti-replay') end # Enable Anti-Replay check on this tunnel def anti_replay=(val) prop_set('anti-replay', val) end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos prop_get('copy-tos') end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos=(val) prop_set('copy-tos', val) end # Copy IPv6 flow label for 6in6 tunnel from inner packet to IPSec packet (not recommended) def copy_flow_label prop_get('copy-flow-label') end # Copy IPv6 flow label for 6in6 tunnel from inner packet to IPSec packet (not recommended) def copy_flow_label=(val) prop_set('copy-flow-label', val) end # allow GRE over IPSec def enable_gre_encapsulation prop_get('enable-gre-encapsulation') end # allow GRE over IPSec def enable_gre_encapsulation=(val) prop_set('enable-gre-encapsulation', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ipsec def ipsec if @create_children @subclasses['ipsec'] ||= Ipsec.new(parent_instance: self, create_children: @create_children) else Ipsec.new(parent_instance: self) end end class GlobalProtectGateway < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/$ifname/ipv6/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name"]}} # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IP address def ipv4 prop_get('ipv4') end # Floating IP address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class Ipsec < ConfigClass def has_multiple_values? false end def _section :'ipsec' end class ThirdPartyClient__2 < ConfigClass def has_multiple_values? false end def _section :'third-party-client__2' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable thrid party client support"}, "group-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"group name"}, "group-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "encrypt"=>"yes", "help-string"=>"group password"}, "rekey-noauth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Skip Auth on IKE Rekey"}} # Enable thrid party client support def enable prop_get('enable') end # Enable thrid party client support def enable=(val) prop_set('enable', val) end # group name def group_name prop_get('group-name') end # group name def group_name=(val) prop_set('group-name', val) end # group password def group_password prop_get('group-password') end # group password def group_password=(val) prop_set('group-password', val) end # Skip Auth on IKE Rekey def rekey_noauth prop_get('rekey-noauth') end # Skip Auth on IKE Rekey def rekey_noauth=(val) prop_set('rekey-noauth', val) end end # class ThirdPartyClient__2 def third_party_client__2 @subclasses['third-party-client__2'] ||= ThirdPartyClient__2.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable IPSec"}, "server-udp-port"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535", "default"=>"4501", "help-string"=> "the port number used to send/receive IPSec over UDP traffic on GlobalProtect gateway side"}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"IPSec crypto profile name", "default"=>"default", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/global-protect-app-crypto-profiles/entry/@name"]}} # Enable IPSec def enable prop_get('enable') end # Enable IPSec def enable=(val) prop_set('enable', val) end # the port number used to send/receive IPSec over UDP traffic on GlobalProtect gateway side def server_udp_port prop_get('server-udp-port') end # the port number used to send/receive IPSec over UDP traffic on GlobalProtect gateway side def server_udp_port=(val) prop_set('server-udp-port', val) end # IPSec crypto profile name def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # IPSec crypto profile name def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end end # class Ipsec def ipsec @subclasses['ipsec'] ||= Ipsec.new(parent_instance: self, create_children: @create_children) end class Ssl < ConfigClass def has_multiple_values? false end def _section :'ssl' end @props={"server-port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535", "default"=>"443", "help-string"=> "the port number used to send/receive SSL traffic on GlobalProtect gateway side"}} # the port number used to send/receive SSL traffic on GlobalProtect gateway side def server_port prop_get('server-port') end # the port number used to send/receive SSL traffic on GlobalProtect gateway side def server_port=(val) prop_set('server-port', val) end end # class Ssl def ssl @subclasses['ssl'] ||= Ssl.new(parent_instance: self, create_children: @create_children) end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class Client < ConfigClass def has_multiple_values? false end def _section :'client' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3/pppoe]/@name", "#network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/vlan/units/entry[dhcp-client]/@name", "name(../../../../../../../interface/vlan[dhcp-client])", "#network/interface/aggregate-ethernet/entry[layer3/dhcp-client]/@name|#network/interface/aggregate-ethernet/entry/layer3/units/entry[dhcp-client]/@name", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class DnsServer < ConfigClass def has_multiple_values? false end def _section :'dns-server' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS primary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS secondary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # DNS primary server ip address def primary prop_get('primary') end # DNS primary server ip address def primary=(val) prop_set('primary', val) end # DNS secondary server ip address def secondary prop_get('secondary') end # DNS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class DnsServer def dns_server @subclasses['dns-server'] ||= DnsServer.new(parent_instance: self, create_children: @create_children) end class WinsServer < ConfigClass def has_multiple_values? false end def _section :'wins-server' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # WINS primary server ip address def primary prop_get('primary') end # WINS primary server ip address def primary=(val) prop_set('primary', val) end # WINS secondary server ip address def secondary prop_get('secondary') end # WINS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class WinsServer def wins_server @subclasses['wins-server'] ||= WinsServer.new(parent_instance: self, create_children: @create_children) end class DnsSuffix < XML::ConfigClass def has_multiple_values? true end def _section :'dns-suffix' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"DNS suffix for client"}} # DNS suffix for client def member prop_get('member') end # DNS suffix for client def member=(val) prop_set('member', val) end end # class DnsSuffix def dns_suffix if @create_children @subclasses['dns-suffix'] ||= DnsSuffix.new(parent_instance: self, create_children: @create_children) else DnsSuffix.new(parent_instance: self) end end class ExcludeVideoTraffic < ConfigClass def has_multiple_values? false end def _section :'exclude-video-traffic' end class Applications < XML::ConfigClass def has_multiple_values? true end def _section :'applications' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"200", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[(not(video-type='yes')) and ((technology='browser-based') or (use-applications/member='web-browsing'))]/@name", "##/predefined/application/entry[video-type='yes']/@name", "##/predefined/application-container/entry[(not(video-type='yes')) and ((technology='browser-based') or (use-applications/member='web-browsing'))]/@name", "##/predefined/application-container/entry[video-type='yes']/@name", "#config/shared/application/entry[(technology='browser-based') or (use-applications/member='web-browsing')]/@name", "#config/shared/content-preview/application/entry[(technology='browser-based') or (use-applications/member='web-browsing')]/@name", "#myentry(vsys)/application/entry[(technology='browser-based') or (use-applications/member='web-browsing')]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Applications def applications if @create_children @subclasses['applications'] ||= Applications.new(parent_instance: self, create_children: @create_children) else Applications.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Enable exclude video traffic"}} # Enable exclude video traffic def enabled prop_get('enabled') end # Enable exclude video traffic def enabled=(val) prop_set('enabled', val) end end # class ExcludeVideoTraffic def exclude_video_traffic @subclasses['exclude-video-traffic'] ||= ExcludeVideoTraffic.new(parent_instance: self, create_children: @create_children) end @props={"dns-suffix-inherited"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Enable dns-suffix inheritance from dynamic interface"}} # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited prop_get('dns-suffix-inherited') end # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited=(val) prop_set('dns-suffix-inherited', val) end end # class Client def client @subclasses['client'] ||= Client.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"33", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [ 0-9a-zA-Z._-]"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"to apply GlobalProtect gateway tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "max-user"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "platform-max"=>"cfg.general.max-ssl-tunnel", "help-string"=>"max number of concurrent logined users"}} # alphanumeric string begin with letter: [ 0-9a-zA-Z._-] def name prop_get('@name') end # to apply GlobalProtect gateway tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply GlobalProtect gateway tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end # max number of concurrent logined users def max_user prop_get('max-user') end # max number of concurrent logined users def max_user=(val) prop_set('max-user', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectGateway def global_protect_gateway if @create_children @subclasses['global-protect-gateway'] ||= GlobalProtectGateway.new(parent_instance: self, create_children: @create_children) else GlobalProtectGateway.new(parent_instance: self) end end class GlobalProtectSiteToSite < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-site-to-site' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/$ifname/ipv6/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name"]}} # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IP address def ipv4 prop_get('ipv4') end # Floating IP address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class Client < ConfigClass def has_multiple_values? false end def _section :'client' end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3/pppoe]/@name", "#network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/vlan/units/entry[dhcp-client]/@name", "name(../../../../../../../interface/vlan[dhcp-client])", "#network/interface/aggregate-ethernet/entry[layer3/dhcp-client]/@name|#network/interface/aggregate-ethernet/entry/layer3/units/entry[dhcp-client]/@name", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class DnsServer < ConfigClass def has_multiple_values? false end def _section :'dns-server' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS primary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS secondary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # DNS primary server ip address def primary prop_get('primary') end # DNS primary server ip address def primary=(val) prop_set('primary', val) end # DNS secondary server ip address def secondary prop_get('secondary') end # DNS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class DnsServer def dns_server @subclasses['dns-server'] ||= DnsServer.new(parent_instance: self, create_children: @create_children) end class DnsSuffix < XML::ConfigClass def has_multiple_values? true end def _section :'dns-suffix' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"DNS suffix for client"}} # DNS suffix for client def member prop_get('member') end # DNS suffix for client def member=(val) prop_set('member', val) end end # class DnsSuffix def dns_suffix if @create_children @subclasses['dns-suffix'] ||= DnsSuffix.new(parent_instance: self, create_children: @create_children) else DnsSuffix.new(parent_instance: self) end end class SplitTunneling < ConfigClass def has_multiple_values? false end def _section :'split-tunneling' end class AccessRoute < XML::ConfigClass def has_multiple_values? true end def _section :'access-route' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AccessRoute def access_route if @create_children @subclasses['access-route'] ||= AccessRoute.new(parent_instance: self, create_children: @create_children) else AccessRoute.new(parent_instance: self) end end @props={} end # class SplitTunneling def split_tunneling @subclasses['split-tunneling'] ||= SplitTunneling.new(parent_instance: self, create_children: @create_children) end class TunnelMonitor < ConfigClass def has_multiple_values? false end def _section :'tunnel-monitor' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Enable tunnel monitoring on this tunnel"}, "destination-ip"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Destination IP to send ICMP probe", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "destination-ipv6"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Destination IPv6 to send ICMP probe", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "tunnel-monitor-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"monitoring action", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/monitor-profile/entry/@name"]}} # Enable tunnel monitoring on this tunnel def enable prop_get('enable') end # Enable tunnel monitoring on this tunnel def enable=(val) prop_set('enable', val) end # Destination IP to send ICMP probe def destination_ip prop_get('destination-ip') end # Destination IP to send ICMP probe def destination_ip=(val) prop_set('destination-ip', val) end # Destination IPv6 to send ICMP probe def destination_ipv6 prop_get('destination-ipv6') end # Destination IPv6 to send ICMP probe def destination_ipv6=(val) prop_set('destination-ipv6', val) end # monitoring action def tunnel_monitor_profile prop_get('tunnel-monitor-profile') end # monitoring action def tunnel_monitor_profile=(val) prop_set('tunnel-monitor-profile', val) end end # class TunnelMonitor def tunnel_monitor @subclasses['tunnel-monitor'] ||= TunnelMonitor.new(parent_instance: self, create_children: @create_children) end class ValidNetworks < XML::ConfigClass def has_multiple_values? true end def _section :'valid-networks' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "subnet-only"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ValidNetworks def valid_networks if @create_children @subclasses['valid-networks'] ||= ValidNetworks.new(parent_instance: self, create_children: @create_children) else ValidNetworks.new(parent_instance: self) end end @props={"config-refresh-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"48", "default"=>"2", "help-string"=> "GlobalProtect gateway configuration refresh interval in hours"}, "dns-suffix-inherited"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Enable dns-suffix inheritance from dynamic interface"}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"IPSec crypto profile name", "default"=>"default", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ipsec-crypto-profiles/entry[not(esp/encryption/member='des')]/@name"]}, "accept-published-routes"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "Whether Gateway should accept routes published by Satellite"}, "anti-replay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable Anti-Replay check on this tunnel"}, "copy-tos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Copy IP TOS bits from inner packet to IPSec packet (not recommended)"}} # GlobalProtect gateway configuration refresh interval in hours def config_refresh_interval prop_get('config-refresh-interval') end # GlobalProtect gateway configuration refresh interval in hours def config_refresh_interval=(val) prop_set('config-refresh-interval', val) end # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited prop_get('dns-suffix-inherited') end # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited=(val) prop_set('dns-suffix-inherited', val) end # IPSec crypto profile name def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # IPSec crypto profile name def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end # Whether Gateway should accept routes published by Satellite def accept_published_routes prop_get('accept-published-routes') end # Whether Gateway should accept routes published by Satellite def accept_published_routes=(val) prop_set('accept-published-routes', val) end # Enable Anti-Replay check on this tunnel def anti_replay prop_get('anti-replay') end # Enable Anti-Replay check on this tunnel def anti_replay=(val) prop_set('anti-replay', val) end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos prop_get('copy-tos') end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos=(val) prop_set('copy-tos', val) end end # class Client def client @subclasses['client'] ||= Client.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"33", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [ 0-9a-zA-Z._-]"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "to apply GlobalProtect site to site tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} # alphanumeric string begin with letter: [ 0-9a-zA-Z._-] def name prop_get('@name') end # to apply GlobalProtect site to site tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply GlobalProtect site to site tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectSiteToSite def global_protect_site_to_site if @create_children @subclasses['global-protect-site-to-site'] ||= GlobalProtectSiteToSite.new(parent_instance: self, create_children: @create_children) else GlobalProtectSiteToSite.new(parent_instance: self) end end @props={} end # class Tunnel__5 def tunnel__5 @subclasses['tunnel__5'] ||= Tunnel__5.new(parent_instance: self, create_children: @create_children) end class Vlan < XML::ConfigClass def has_multiple_values? true end def _section :'vlan' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"30", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=>["../../../../interface/member"]}} # MAC address (format xx:xx:xx:xx:xx:xx) def name prop_get('@name') end # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class VirtualInterface < ConfigClass def has_multiple_values? false end def _section :'virtual-interface' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Virtual interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/vlan/units/entry/@name", "string('vlan')", "string('vlan')"]}} # Virtual interface def interface prop_get('interface') end # Virtual interface def interface=(val) prop_set('interface', val) end end # class VirtualInterface def virtual_interface @subclasses['virtual-interface'] ||= VirtualInterface.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vlan def vlan if @create_children @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) else Vlan.new(parent_instance: self) end end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Profile < XML::ConfigClass def has_multiple_values? true end def _section :'profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AggregateBandwidth < ConfigClass def has_multiple_values? false end def _section :'aggregate-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class AggregateBandwidth def aggregate_bandwidth @subclasses['aggregate-bandwidth'] ||= AggregateBandwidth.new(parent_instance: self, create_children: @create_children) end class ClassBandwidthType < XML::ConfigClass def has_multiple_values? true end def _section :'class-bandwidth-type' end class Mbps < ConfigClass def has_multiple_values? false end def _section :'mbps' end class Class < XML::ConfigClass def has_multiple_values? true end def _section :'class' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ClassBandwidth < ConfigClass def has_multiple_values? false end def _section :'class-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class ClassBandwidth def class_bandwidth @subclasses['class-bandwidth'] ||= ClassBandwidth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"traffic class", "autocomplete"=>"yes", "memberof"=> ["string('class1')", "string('class2')", "string('class3')", "string('class4')", "string('class5')", "string('class6')", "string('class7')", "string('class8')", "string('class8')"]}, "priority"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"medium", "help-string"=>"traffic class priority", "enum"=> [{"value"=>"real-time", "help-string"=>"highest priority"}, {"value"=>"high", "help-string"=>"high priority"}, {"value"=>"medium", "help-string"=>"medium priority"}, {"value"=>"low", "help-string"=>"low priority"}]}, "round-trip-time"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"1000", "default"=>"20", "help-string"=> "estimated average round trip time (in milli-seconds) for network path"}} # traffic class def name prop_get('@name') end # traffic class priority def priority prop_get('priority') end # traffic class priority def priority=(val) prop_set('priority', val) end # estimated average round trip time (in milli-seconds) for network path def round_trip_time prop_get('round-trip-time') end # estimated average round trip time (in milli-seconds) for network path def round_trip_time=(val) prop_set('round-trip-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Class def class if @create_children @subclasses['class'] ||= Class.new(parent_instance: self, create_children: @create_children) else Class.new(parent_instance: self) end end @props={} end # class Mbps def mbps @subclasses['mbps'] ||= Mbps.new(parent_instance: self, create_children: @create_children) end class Percentage < ConfigClass def has_multiple_values? false end def _section :'percentage' end class Class < XML::ConfigClass def has_multiple_values? true end def _section :'class' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ClassBandwidth < ConfigClass def has_multiple_values? false end def _section :'class-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"0", "help-string"=>"max sending bandwidth percentage"}, "egress-guaranteed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"100", "default"=>"0", "help-string"=>"guaranteed sending bandwidth percentage"}} # max sending bandwidth percentage def egress_max prop_get('egress-max') end # max sending bandwidth percentage def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth percentage def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth percentage def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class ClassBandwidth def class_bandwidth @subclasses['class-bandwidth'] ||= ClassBandwidth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"traffic class", "autocomplete"=>"yes", "memberof"=> ["string('class1')", "string('class2')", "string('class3')", "string('class4')", "string('class5')", "string('class6')", "string('class7')", "string('class8')", "string('class8')"]}, "priority"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"medium", "help-string"=>"traffic class priority", "enum"=> [{"value"=>"real-time", "help-string"=>"highest priority"}, {"value"=>"high", "help-string"=>"high priority"}, {"value"=>"medium", "help-string"=>"medium priority"}, {"value"=>"low", "help-string"=>"low priority"}]}, "round-trip-time"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"1000", "default"=>"20", "help-string"=> "estimated average round trip time (in milli-seconds) for network path"}} # traffic class def name prop_get('@name') end # traffic class priority def priority prop_get('priority') end # traffic class priority def priority=(val) prop_set('priority', val) end # estimated average round trip time (in milli-seconds) for network path def round_trip_time prop_get('round-trip-time') end # estimated average round trip time (in milli-seconds) for network path def round_trip_time=(val) prop_set('round-trip-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Class def class if @create_children @subclasses['class'] ||= Class.new(parent_instance: self, create_children: @create_children) else Class.new(parent_instance: self) end end @props={} end # class Percentage def percentage @subclasses['percentage'] ||= Percentage.new(parent_instance: self, create_children: @create_children) end @props={} end # class ClassBandwidthType def class_bandwidth_type if @create_children @subclasses['class-bandwidth-type'] ||= ClassBandwidthType.new(parent_instance: self, create_children: @create_children) else ClassBandwidthType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Profile def profile if @create_children @subclasses['profile'] ||= Profile.new(parent_instance: self, create_children: @create_children) else Profile.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class InterfaceBandwidth < ConfigClass def has_multiple_values? false end def _section :'interface-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "complete-handler"=>"sdwan-emax-completer", "type"=>"multiple", "optional"=>"yes", "default"=>"0", "help-string"=>"max bandwidth in mbps", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/egress-max]/@name"], "multi-types"=> {"float"=>{"min"=>"0", "max"=>"60000"}, "string"=>{"maxlen"=>"63"}}}} # max bandwidth in mbps def egress_max prop_get('egress-max') end # max bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end end # class InterfaceBandwidth def interface_bandwidth @subclasses['interface-bandwidth'] ||= InterfaceBandwidth.new(parent_instance: self, create_children: @create_children) end class TunnelTraffic < ConfigClass def has_multiple_values? false end def _section :'tunnel-traffic' end class Groups < XML::ConfigClass def has_multiple_values? true end def _section :'groups' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/tunnel/ipsec/entry/tunnel-interface", "#network/tunnel/global-protect-gateway/entry/tunnel-interface", "#network/tunnel/global-protect-site-to-site/entry/tunnel-interface"]}, "qos-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "apply QoS profile for traffic go through the tunnel interface", "autocomplete"=>"yes", "memberof"=>["#network/qos/profile/entry/@name"]}} # tunnel interface def name prop_get('@name') end # apply QoS profile for traffic go through the tunnel interface def qos_profile prop_get('qos-profile') end # apply QoS profile for traffic go through the tunnel interface def qos_profile=(val) prop_set('qos-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"tunnel traffic group", "enum"=> [{"value"=>"tunnel-traffic-group", "help-string"=>"the pre-defined group for tunnel traffic"}]}} # tunnel traffic group def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Groups def groups if @create_children @subclasses['groups'] ||= Groups.new(parent_instance: self, create_children: @create_children) else Groups.new(parent_instance: self) end end class DefaultGroup < ConfigClass def has_multiple_values? false end def _section :'default-group' end @props={"per-tunnel-qos-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "apply QoS profile for traffic go through each tunnel interface", "autocomplete"=>"yes", "memberof"=>["#network/qos/profile/entry/@name"]}} # apply QoS profile for traffic go through each tunnel interface def per_tunnel_qos_profile prop_get('per-tunnel-qos-profile') end # apply QoS profile for traffic go through each tunnel interface def per_tunnel_qos_profile=(val) prop_set('per-tunnel-qos-profile', val) end end # class DefaultGroup def default_group @subclasses['default-group'] ||= DefaultGroup.new(parent_instance: self, create_children: @create_children) end class Bandwidth < ConfigClass def has_multiple_values? false end def _section :'bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class Bandwidth def bandwidth @subclasses['bandwidth'] ||= Bandwidth.new(parent_instance: self, create_children: @create_children) end @props={} end # class TunnelTraffic def tunnel_traffic @subclasses['tunnel-traffic'] ||= TunnelTraffic.new(parent_instance: self, create_children: @create_children) end class RegularTraffic < ConfigClass def has_multiple_values? false end def _section :'regular-traffic' end class Groups < XML::ConfigClass def has_multiple_values? true end def _section :'groups' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "max-count"=>"1", "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"local side interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer3/units/entry/@name|#network/interface/ethernet/entry/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name|#network/interface/aggregate-ethernet/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "destination_interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"destination interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/virtual-wire/units/entry/@name|#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name|#network/interface/ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name|#network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer3]/@name"]}} # local side interface def interface prop_get('interface') end # local side interface def interface=(val) prop_set('interface', val) end # destination interface def destination_interface prop_get('destination_interface') end # destination interface def destination_interface=(val) prop_set('destination_interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"name of this QoS member entity"}, "qos-profile"=> {"node-type"=>"element", "complete-handler"=>"qos-profile-mbps-completer", "type"=>"string", "help-string"=> "apply QoS profile for traffic go through the group of hosts"}} # name of this QoS member entity def name prop_get('@name') end # apply QoS profile for traffic go through the group of hosts def qos_profile prop_get('qos-profile') end # apply QoS profile for traffic go through the group of hosts def qos_profile=(val) prop_set('qos-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"regular traffic group", "enum"=> [{"value"=>"regular-traffic-group", "help-string"=>"the pre-defined group for regular traffic"}]}} # regular traffic group def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Groups def groups if @create_children @subclasses['groups'] ||= Groups.new(parent_instance: self, create_children: @create_children) else Groups.new(parent_instance: self) end end class DefaultGroup < ConfigClass def has_multiple_values? false end def _section :'default-group' end @props={"qos-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"apply QoS profile for aggregated traffic", "autocomplete"=>"yes", "memberof"=> ["#network/qos/profile/entry/@name", "#myentry(template)/variable/entry[type/qos-profile]/@name"]}} # apply QoS profile for aggregated traffic def qos_profile prop_get('qos-profile') end # apply QoS profile for aggregated traffic def qos_profile=(val) prop_set('qos-profile', val) end end # class DefaultGroup def default_group @subclasses['default-group'] ||= DefaultGroup.new(parent_instance: self, create_children: @create_children) end class Bandwidth < ConfigClass def has_multiple_values? false end def _section :'bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class Bandwidth def bandwidth @subclasses['bandwidth'] ||= Bandwidth.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegularTraffic def regular_traffic @subclasses['regular-traffic'] ||= RegularTraffic.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^([\\$]?[a-zA-Z0-9:@./_-])+$", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/ethernet/entry[layer2]/@name", "#network/interface/ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(template)/variable/entry[type/interface]/@name"]}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on QoS feature on this interface"}} # Interface name def name prop_get('@name') end # Turn on QoS feature on this interface def enabled prop_get('enabled') end # Turn on QoS feature on this interface def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end class SpanningTree < XML::ConfigClass def has_multiple_values? true end def _section :'spanning-tree' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Switch port name", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name"]}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Port priority"}, "cost"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Port cost"}, "link-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Port link type", "enum"=> [{"value"=>"auto", "help-string"=>"Automatically detect edge port"}, {"value"=>"edge", "help-string"=>"Edge port"}, {"value"=>"point-to-point", "help-string"=>"Point-to-point link"}]}} # Switch port name def name prop_get('@name') end # Port priority def priority prop_get('priority') end # Port priority def priority=(val) prop_set('priority', val) end # Port cost def cost prop_get('cost') end # Port cost def cost=(val) prop_set('cost', val) end # Port link type def link_type prop_get('link-type') end # Port link type def link_type=(val) prop_set('link-type', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class Time < ConfigClass def has_multiple_values? false end def _section :'time' end @props={"hello-time"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"2", "default"=>"2", "help-string"=>"Hello Time (in seconds)"}, "max-age"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"6", "max"=>"40", "default"=>"20", "help-string"=>"Max Age (in seconds)"}, "forward-delay"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"4", "max"=>"30", "default"=>"15", "help-string"=>"Forward Delay (in seconds)"}} # Hello Time (in seconds) def hello_time prop_get('hello-time') end # Hello Time (in seconds) def hello_time=(val) prop_set('hello-time', val) end # Max Age (in seconds) def max_age prop_get('max-age') end # Max Age (in seconds) def max_age=(val) prop_set('max-age', val) end # Forward Delay (in seconds) def forward_delay prop_get('forward-delay') end # Forward Delay (in seconds) def forward_delay=(val) prop_set('forward-delay', val) end end # class Time def time @subclasses['time'] ||= Time.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "vlan"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"VLAN of the instance", "autocomplete"=>"yes", "memberof"=>["#network/vlan/entry/@name", "#network/vlan/entry/@name"]}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"rstp", "help-string"=>"Rapid Spanning Tree Protocol"}, {"value"=>"per-vlan-rstp", "help-string"=>"Per-VLAN Rapid Spanning Tree"}]}, "bridge-priority"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"65535", "default"=>"32768", "help-string"=>"Bridge priority"}, "port-priority"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Default port priority within this instance"}, "port-cost"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Default port cost within this instance"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # VLAN of the instance def vlan prop_get('vlan') end # VLAN of the instance def vlan=(val) prop_set('vlan', val) end def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end # Bridge priority def bridge_priority prop_get('bridge-priority') end # Bridge priority def bridge_priority=(val) prop_set('bridge-priority', val) end # Default port priority within this instance def port_priority prop_get('port-priority') end # Default port priority within this instance def port_priority=(val) prop_set('port-priority', val) end # Default port cost within this instance def port_cost prop_get('port-cost') end # Default port cost within this instance def port_cost=(val) prop_set('port-cost', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SpanningTree def spanning_tree if @create_children @subclasses['spanning-tree'] ||= SpanningTree.new(parent_instance: self, create_children: @create_children) else SpanningTree.new(parent_instance: self) end end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MulticastFirewalling < ConfigClass def has_multiple_values? false end def _section :'multicast-firewalling' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable firewalling for non-unicast traffic", "default"=>"no"}} # Enable firewalling for non-unicast traffic def enable prop_get('enable') end # Enable firewalling for non-unicast traffic def enable=(val) prop_set('enable', val) end end # class MulticastFirewalling def multicast_firewalling @subclasses['multicast-firewalling'] ||= MulticastFirewalling.new(parent_instance: self, create_children: @create_children) end class LinkStatePassThrough < ConfigClass def has_multiple_values? false end def _section :'link-state-pass-through' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable link state passthrough", "default"=>"yes"}} # Enable link state passthrough def enable prop_get('enable') end # Enable link state passthrough def enable=(val) prop_set('enable', val) end end # class LinkStatePassThrough def link_state_pass_through @subclasses['link-state-pass-through'] ||= LinkStatePassThrough.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "interface1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Interface 1", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/virtual-wire/units/entry/@name|#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name"]}, "interface2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Interface 2", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/virtual-wire/units/entry/@name|#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name"]}, "tag-allowed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"4094", "help-string"=>"Allowed 802.1q VLAN tags", "prune-on-sdb"=>"cfg.platform.vm.virtual-wire.tag-allowed-disable=True"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Interface 1 def interface1 prop_get('interface1') end # Interface 1 def interface1=(val) prop_set('interface1', val) end # Interface 2 def interface2 prop_get('interface2') end # Interface 2 def interface2=(val) prop_set('interface2', val) end # Allowed 802.1q VLAN tags def tag_allowed prop_get('tag-allowed') end # Allowed 802.1q VLAN tags def tag_allowed=(val) prop_set('tag-allowed', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class VirtualRouter < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')", "#network/interface/sdwan/units/entry/@name", "string('sdwan')", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class RoutingTable < ConfigClass def has_multiple_values? false end def _section :'routing-table' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Receive < ConfigClass def has_multiple_values? false end def _section :'receive' end @props={} end # class Receive def receive @subclasses['receive'] ||= Receive.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN address object configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "next-vr"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Next hop virtual router", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-router/entry/@name"]}, "tunnel"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Forward packet through tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/tunnel/hop/entry/@name", "#network/tunnel/ipsec/entry/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN address object configuration def fqdn prop_get('fqdn') end # nexthop address FQDN address object configuration def fqdn=(val) prop_set('fqdn', val) end # Next hop virtual router def next_vr prop_get('next-vr') end # Next hop virtual router def next_vr=(val) prop_set('next-vr', val) end # Forward packet through tunnel def tunnel prop_get('tunnel') end # Forward packet through tunnel def tunnel=(val) prop_set('tunnel', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class RouteTable < ConfigClass def has_multiple_values? false end def _section :'route-table' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end class Multicast < ConfigClass def has_multiple_values? false end def _section :'multicast' end @props={} end # class Multicast def multicast @subclasses['multicast'] ||= Multicast.new(parent_instance: self, create_children: @create_children) end class Both < ConfigClass def has_multiple_values? false end def _section :'both' end @props={} end # class Both def both @subclasses['both'] ||= Both.new(parent_instance: self, create_children: @create_children) end class NoInstall < ConfigClass def has_multiple_values? false end def _section :'no-install' end @props={} end # class NoInstall def no_install @subclasses['no-install'] ||= NoInstall.new(parent_instance: self, create_children: @create_children) end @props={} end # class RouteTable def route_table @subclasses['route-table'] ||= RouteTable.new(parent_instance: self, create_children: @create_children) end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"DHCP", "help-string"=>"Use DHCP Client address"}]}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/interface/member", "string('sd_wan')"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Receive < ConfigClass def has_multiple_values? false end def _section :'receive' end @props={} end # class Receive def receive @subclasses['receive'] ||= Receive.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ipv6-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "next-vr"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Next hop virtual router", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-router/entry/@name"]}, "tunnel"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Forward packet through tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/tunnel/hop/entry/@name", "#network/tunnel/ipsec/entry/@name"]}} # Next hop IP address def ipv6_address prop_get('ipv6-address') end # Next hop IP address def ipv6_address=(val) prop_set('ipv6-address', val) end # Next hop virtual router def next_vr prop_get('next-vr') end # Next hop virtual router def next_vr=(val) prop_set('next-vr', val) end # Forward packet through tunnel def tunnel prop_get('tunnel') end # Forward packet through tunnel def tunnel=(val) prop_set('tunnel', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end class Passive < ConfigClass def has_multiple_values? false end def _section :'passive' end @props={} end # class Passive def passive @subclasses['passive'] ||= Passive.new(parent_instance: self, create_children: @create_children) end @props={} end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class RouteTable < ConfigClass def has_multiple_values? false end def _section :'route-table' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end class NoInstall < ConfigClass def has_multiple_values? false end def _section :'no-install' end @props={} end # class NoInstall def no_install @subclasses['no-install'] ||= NoInstall.new(parent_instance: self, create_children: @create_children) end @props={} end # class RouteTable def route_table @subclasses['route-table'] ||= RouteTable.new(parent_instance: self, create_children: @create_children) end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name"], "multi-types"=>{"string"=>{}}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class RoutingTable def routing_table @subclasses['routing-table'] ||= RoutingTable.new(parent_instance: self, create_children: @create_children) end class Multicast < ConfigClass def has_multiple_values? false end def _section :'multicast' end class InterfaceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'interface-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class GroupPermission < ConfigClass def has_multiple_values? false end def _section :'group-permission' end class AnySourceMulticast < XML::ConfigClass def has_multiple_values? true end def _section :'any-source-multicast' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"rule name"}, "group-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"group-address/prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "included"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"included"}} # rule name def name prop_get('@name') end # group-address/prefix def group_address prop_get('group-address') end # group-address/prefix def group_address=(val) prop_set('group-address', val) end # included def included prop_get('included') end # included def included=(val) prop_set('included', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AnySourceMulticast def any_source_multicast if @create_children @subclasses['any-source-multicast'] ||= AnySourceMulticast.new(parent_instance: self, create_children: @create_children) else AnySourceMulticast.new(parent_instance: self) end end class SourceSpecificMulticast < XML::ConfigClass def has_multiple_values? true end def _section :'source-specific-multicast' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"rule name"}, "group-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"group-address/prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "source-address"=> {"node-type"=>"element", "type"=>"multiple", "ipv4-only"=>"yes", "help-string"=>"source-address/prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "included"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"included"}} # rule name def name prop_get('@name') end # group-address/prefix def group_address prop_get('group-address') end # group-address/prefix def group_address=(val) prop_set('group-address', val) end # source-address/prefix def source_address prop_get('source-address') end # source-address/prefix def source_address=(val) prop_set('source-address', val) end # included def included prop_get('included') end # included def included=(val) prop_set('included', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SourceSpecificMulticast def source_specific_multicast if @create_children @subclasses['source-specific-multicast'] ||= SourceSpecificMulticast.new(parent_instance: self, create_children: @create_children) else SourceSpecificMulticast.new(parent_instance: self) end end @props={} end # class GroupPermission def group_permission @subclasses['group-permission'] ||= GroupPermission.new(parent_instance: self, create_children: @create_children) end class Igmp < ConfigClass def has_multiple_values? false end def _section :'igmp' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable IGMP"}, "version"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"3", "help-string"=>"IGMP version number", "enum"=>[{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}]}, "mode"=> {"node-type"=>"element", "optional"=>"yes", "disabled"=>"yes", "type"=>"multiple", "default"=>"router", "help-string"=>"IGMP mode", "multi-types"=>{"enum"=>[{"value"=>"router"}, {"value"=>"host"}]}}, "max-query-response-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "default"=>"10", "min"=>"0", "max"=>"3174.4", "help-string"=> "maximum query response time for general group membership queries in seconds"}, "query-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"125", "min"=>"1", "max"=>"31744", "help-string"=>"interval between group/source specific query messages"}, "last-member-query-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "default"=>"1", "min"=>"0.1", "max"=>"3174.4", "help-string"=> "interval between group/source specific query messages (including those sent in response of leave group messages)"}, "immediate-leave"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"leave group immediately when a leave message is received"}, "robustness"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"2", "help-string"=>"robustness variable", "enum"=> [{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}, {"value"=>"4"}, {"value"=>"5"}, {"value"=>"6"}, {"value"=>"7"}]}, "max-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unlimited", "help-string"=>"maximum number of groups allowed on this interface", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535"}, "enum"=>[{"value"=>"unlimited"}]}}, "max-sources"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unlimited", "help-string"=> "maximum number of source-specific memberships allowed on this interface", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535"}, "enum"=>[{"value"=>"unlimited"}]}}, "router-alert-policing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"drop IGMP packets without Router Alert option"}} # enable IGMP def enable prop_get('enable') end # enable IGMP def enable=(val) prop_set('enable', val) end # IGMP version number def version prop_get('version') end # IGMP version number def version=(val) prop_set('version', val) end # IGMP mode def mode prop_get('mode') end # IGMP mode def mode=(val) prop_set('mode', val) end # maximum query response time for general group membership queries in seconds def max_query_response_time prop_get('max-query-response-time') end # maximum query response time for general group membership queries in seconds def max_query_response_time=(val) prop_set('max-query-response-time', val) end # interval between group/source specific query messages def query_interval prop_get('query-interval') end # interval between group/source specific query messages def query_interval=(val) prop_set('query-interval', val) end # interval between group/source specific query messages (including those sent in response of leave group messages) def last_member_query_interval prop_get('last-member-query-interval') end # interval between group/source specific query messages (including those sent in response of leave group messages) def last_member_query_interval=(val) prop_set('last-member-query-interval', val) end # leave group immediately when a leave message is received def immediate_leave prop_get('immediate-leave') end # leave group immediately when a leave message is received def immediate_leave=(val) prop_set('immediate-leave', val) end # robustness variable def robustness prop_get('robustness') end # robustness variable def robustness=(val) prop_set('robustness', val) end # maximum number of groups allowed on this interface def max_groups prop_get('max-groups') end # maximum number of groups allowed on this interface def max_groups=(val) prop_set('max-groups', val) end # maximum number of source-specific memberships allowed on this interface def max_sources prop_get('max-sources') end # maximum number of source-specific memberships allowed on this interface def max_sources=(val) prop_set('max-sources', val) end # drop IGMP packets without Router Alert option def router_alert_policing prop_get('router-alert-policing') end # drop IGMP packets without Router Alert option def router_alert_policing=(val) prop_set('router-alert-policing', val) end end # class Igmp def igmp @subclasses['igmp'] ||= Igmp.new(parent_instance: self, create_children: @create_children) end class Pim < ConfigClass def has_multiple_values? false end def _section :'pim' end class AllowedNeighbors < XML::ConfigClass def has_multiple_values? true end def _section :'allowed-neighbors' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"ip address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AllowedNeighbors def allowed_neighbors if @create_children @subclasses['allowed-neighbors'] ||= AllowedNeighbors.new(parent_instance: self, create_children: @create_children) else AllowedNeighbors.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "assert-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65534", "default"=>"177", "help-string"=>"interval between PIM Assert messages, in seconds"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"18000", "default"=>"30", "help-string"=> "interval between PIM Hello messages, in seconds, a value of 0 represents an 'infinite' interval"}, "join-prune-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"18000", "default"=>"60", "help-string"=>"interval between PIM Join/Prune messages, in seconds"}, "dr-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"1", "help-string"=>"Designated Router priority"}, "bsr-border"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"interface is bootstrap border"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # interval between PIM Assert messages, in seconds def assert_interval prop_get('assert-interval') end # interval between PIM Assert messages, in seconds def assert_interval=(val) prop_set('assert-interval', val) end # interval between PIM Hello messages, in seconds, a value of 0 represents an 'infinite' interval def hello_interval prop_get('hello-interval') end # interval between PIM Hello messages, in seconds, a value of 0 represents an 'infinite' interval def hello_interval=(val) prop_set('hello-interval', val) end # interval between PIM Join/Prune messages, in seconds def join_prune_interval prop_get('join-prune-interval') end # interval between PIM Join/Prune messages, in seconds def join_prune_interval=(val) prop_set('join-prune-interval', val) end # Designated Router priority def dr_priority prop_get('dr-priority') end # Designated Router priority def dr_priority=(val) prop_set('dr-priority', val) end # interface is bootstrap border def bsr_border prop_get('bsr-border') end # interface is bootstrap border def bsr_border=(val) prop_set('bsr-border', val) end end # class Pim def pim @subclasses['pim'] ||= Pim.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"interface group name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # interface group name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class InterfaceGroup def interface_group if @create_children @subclasses['interface-group'] ||= InterfaceGroup.new(parent_instance: self, create_children: @create_children) else InterfaceGroup.new(parent_instance: self) end end class SsmAddressSpace < XML::ConfigClass def has_multiple_values? true end def _section :'ssm-address-space' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"rule name"}, "group-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"group-address/prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"ipv4-only"=>"yes", "multicast-only"=>"yes", "default"=>"232.0.0.0/8"}, "string"=>{"maxlen"=>"63"}}}, "included"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"included"}} # rule name def name prop_get('@name') end # group-address/prefix def group_address prop_get('group-address') end # group-address/prefix def group_address=(val) prop_set('group-address', val) end # included def included prop_get('included') end # included def included=(val) prop_set('included', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SsmAddressSpace def ssm_address_space if @create_children @subclasses['ssm-address-space'] ||= SsmAddressSpace.new(parent_instance: self, create_children: @create_children) else SsmAddressSpace.new(parent_instance: self) end end class SptThreshold < XML::ConfigClass def has_multiple_values? true end def _section :'spt-threshold' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"multicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "threshold"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"0", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"data rate (kbps) at which a SPT switch is triggered"}, "enum"=> [{"value"=>"never", "help-string"=>"do not switch to spt"}, {"value"=>"0", "help-string"=>"switch on first data packet"}]}}} def name prop_get('@name') end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SptThreshold def spt_threshold if @create_children @subclasses['spt-threshold'] ||= SptThreshold.new(parent_instance: self, create_children: @create_children) else SptThreshold.new(parent_instance: self) end end class Rp < ConfigClass def has_multiple_values? false end def _section :'rp' end class LocalRp < ConfigClass def has_multiple_values? false end def _section :'local-rp' end class StaticRp < ConfigClass def has_multiple_values? false end def _section :'static-rp' end class GroupAddresses < XML::ConfigClass def has_multiple_values? true end def _section :'group-addresses' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupAddresses def group_addresses if @create_children @subclasses['group-addresses'] ||= GroupAddresses.new(parent_instance: self, create_children: @create_children) else GroupAddresses.new(parent_instance: self) end end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"local RP interface", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"local RP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "override"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Override learned RP for the same group"}} # local RP interface def interface prop_get('interface') end # local RP interface def interface=(val) prop_set('interface', val) end # local RP address def address prop_get('address') end # local RP address def address=(val) prop_set('address', val) end # Override learned RP for the same group def override prop_get('override') end # Override learned RP for the same group def override=(val) prop_set('override', val) end end # class StaticRp def static_rp @subclasses['static-rp'] ||= StaticRp.new(parent_instance: self, create_children: @create_children) end class CandidateRp < ConfigClass def has_multiple_values? false end def _section :'candidate-rp' end class GroupAddresses < XML::ConfigClass def has_multiple_values? true end def _section :'group-addresses' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupAddresses def group_addresses if @create_children @subclasses['group-addresses'] ||= GroupAddresses.new(parent_instance: self, create_children: @create_children) else GroupAddresses.new(parent_instance: self) end end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"candidate RP interface", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"candidate RP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"192", "help-string"=>"The priority for this candidate rt"}, "advertisement-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"26214", "default"=>"60", "help-string"=> "The time interval in seconds between candidate rp advertisements"}} # candidate RP interface def interface prop_get('interface') end # candidate RP interface def interface=(val) prop_set('interface', val) end # candidate RP address def address prop_get('address') end # candidate RP address def address=(val) prop_set('address', val) end # The priority for this candidate rt def priority prop_get('priority') end # The priority for this candidate rt def priority=(val) prop_set('priority', val) end # The time interval in seconds between candidate rp advertisements def advertisement_interval prop_get('advertisement-interval') end # The time interval in seconds between candidate rp advertisements def advertisement_interval=(val) prop_set('advertisement-interval', val) end end # class CandidateRp def candidate_rp @subclasses['candidate-rp'] ||= CandidateRp.new(parent_instance: self, create_children: @create_children) end @props={} end # class LocalRp def local_rp @subclasses['local-rp'] ||= LocalRp.new(parent_instance: self, create_children: @create_children) end class ExternalRp < XML::ConfigClass def has_multiple_values? true end def _section :'external-rp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GroupAddresses < XML::ConfigClass def has_multiple_values? true end def _section :'group-addresses' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupAddresses def group_addresses if @create_children @subclasses['group-addresses'] ||= GroupAddresses.new(parent_instance: self, create_children: @create_children) else GroupAddresses.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"RP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "override"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Override learned RP for the same group"}} # RP address def name prop_get('@name') end # Override learned RP for the same group def override prop_get('override') end # Override learned RP for the same group def override=(val) prop_set('override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExternalRp def external_rp if @create_children @subclasses['external-rp'] ||= ExternalRp.new(parent_instance: self, create_children: @create_children) else ExternalRp.new(parent_instance: self) end end @props={} end # class Rp def rp @subclasses['rp'] ||= Rp.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable multicast protocol"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "disabled"=>"yes", "default"=>"PIM-SM", "enum"=> [{"value"=>"PIM-SM", "help-string"=>"PIM Sparse Mode"}, {"value"=>"IGMP-Proxy", "help-string"=>"IGMP Proxy"}]}, "route-ageout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"210", "min"=>"210", "max"=>"7200", "help-string"=> "time to wait before aging out a multicast route after data stops, in seconds"}} # enable multicast protocol def enable prop_get('enable') end # enable multicast protocol def enable=(val) prop_set('enable', val) end def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end # time to wait before aging out a multicast route after data stops, in seconds def route_ageout_time prop_get('route-ageout-time') end # time to wait before aging out a multicast route after data stops, in seconds def route_ageout_time=(val) prop_set('route-ageout-time', val) end end # class Multicast def multicast @subclasses['multicast'] ||= Multicast.new(parent_instance: self, create_children: @create_children) end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class RedistProfile < XML::ConfigClass def has_multiple_values? true end def _section :'redist-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Filter < ConfigClass def has_multiple_values? false end def _section :'filter' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"static"}, {"value"=>"connect"}, {"value"=>"rip"}, {"value"=>"ospf"}, {"value"=>"bgp"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class Ospf < ConfigClass def has_multiple_values? false end def _section :'ospf' end class PathType < XML::ConfigClass def has_multiple_values? true end def _section :'path-type' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"intra-area"}, {"value"=>"inter-area"}, {"value"=>"ext-1"}, {"value"=>"ext-2"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PathType def path_type if @create_children @subclasses['path-type'] ||= PathType.new(parent_instance: self, create_children: @create_children) else PathType.new(parent_instance: self) end end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={} end # class Ospf def ospf @subclasses['ospf'] ||= Ospf.new(parent_instance: self, create_children: @create_children) end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class Community < XML::ConfigClass def has_multiple_values? true end def _section :'community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"10", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=>"^[0][xX][0-9A-Fa-f]{8}$|^[1-9][0-9]{0,4}:[1-9][0-9]{0,4}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Community def community if @create_children @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) else Community.new(parent_instance: self) end end class ExtendedCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'extended-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][[:xdigit:]]{16,16})|(([[:digit:]]+|target|origin):[[:digit:].]+:[[:digit:].]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExtendedCommunity def extended_community if @create_children @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) else ExtendedCommunity.new(parent_instance: self) end end @props={} end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Filter def filter @subclasses['filter'] ||= Filter.new(parent_instance: self, create_children: @create_children) end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class NoRedist < ConfigClass def has_multiple_values? false end def _section :'no-redist' end @props={} end # class NoRedist def no_redist @subclasses['no-redist'] ||= NoRedist.new(parent_instance: self, create_children: @create_children) end class Redist < ConfigClass def has_multiple_values? false end def _section :'redist' end @props={} end # class Redist def redist @subclasses['redist'] ||= Redist.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"profile name"}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"priority"}} # profile name def name prop_get('@name') end # priority def priority prop_get('priority') end # priority def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistProfile def redist_profile if @create_children @subclasses['redist-profile'] ||= RedistProfile.new(parent_instance: self, create_children: @create_children) else RedistProfile.new(parent_instance: self) end end class RedistProfileIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'redist-profile-ipv6' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Filter < ConfigClass def has_multiple_values? false end def _section :'filter' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"static"}, {"value"=>"connect"}, {"value"=>"ospfv3"}, {"value"=>"bgp"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class Ospfv3 < ConfigClass def has_multiple_values? false end def _section :'ospfv3' end class PathType < XML::ConfigClass def has_multiple_values? true end def _section :'path-type' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"intra-area"}, {"value"=>"inter-area"}, {"value"=>"ext-1"}, {"value"=>"ext-2"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PathType def path_type if @create_children @subclasses['path-type'] ||= PathType.new(parent_instance: self, create_children: @create_children) else PathType.new(parent_instance: self) end end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={} end # class Ospfv3 def ospfv3 @subclasses['ospfv3'] ||= Ospfv3.new(parent_instance: self, create_children: @create_children) end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class Community < XML::ConfigClass def has_multiple_values? true end def _section :'community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"10", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=>"^[0][xX][0-9A-Fa-f]{8}$|^[1-9][0-9]{0,4}:[1-9][0-9]{0,4}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Community def community if @create_children @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) else Community.new(parent_instance: self) end end class ExtendedCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'extended-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][[:xdigit:]]{16,16})|(([[:digit:]]+|target|origin):[[:digit:].]+:[[:digit:].]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExtendedCommunity def extended_community if @create_children @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) else ExtendedCommunity.new(parent_instance: self) end end @props={} end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Filter def filter @subclasses['filter'] ||= Filter.new(parent_instance: self, create_children: @create_children) end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class NoRedist < ConfigClass def has_multiple_values? false end def _section :'no-redist' end @props={} end # class NoRedist def no_redist @subclasses['no-redist'] ||= NoRedist.new(parent_instance: self, create_children: @create_children) end class Redist < ConfigClass def has_multiple_values? false end def _section :'redist' end @props={} end # class Redist def redist @subclasses['redist'] ||= Redist.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"46", "help-string"=>"profile name"}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"priority"}} # profile name def name prop_get('@name') end # priority def priority prop_get('priority') end # priority def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistProfileIpv6 def redist_profile_ipv6 if @create_children @subclasses['redist-profile-ipv6'] ||= RedistProfileIpv6.new(parent_instance: self, create_children: @create_children) else RedistProfileIpv6.new(parent_instance: self) end end class Rip < ConfigClass def has_multiple_values? false end def _section :'rip' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end @props={"interval-seconds"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=>"timer interval value in seconds"}, "update-intervals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"30", "help-string"=> "number of intervals take between route advertisement (RIP response packet)"}, "expire-intervals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"180", "help-string"=> "number of intervals take between route last updated to its expiration"}, "delete-intervals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"120", "help-string"=> "number of intervals take between route expiration to its deletion"}} # timer interval value in seconds def interval_seconds prop_get('interval-seconds') end # timer interval value in seconds def interval_seconds=(val) prop_set('interval-seconds', val) end # number of intervals take between route advertisement (RIP response packet) def update_intervals prop_get('update-intervals') end # number of intervals take between route advertisement (RIP response packet) def update_intervals=(val) prop_set('update-intervals', val) end # number of intervals take between route last updated to its expiration def expire_intervals prop_get('expire-intervals') end # number of intervals take between route last updated to its expiration def expire_intervals=(val) prop_set('expire-intervals', val) end # number of intervals take between route expiration to its deletion def delete_intervals prop_get('delete-intervals') end # number of intervals take between route expiration to its deletion def delete_intervals=(val) prop_set('delete-intervals', val) end end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Md5 < XML::ConfigClass def has_multiple_values? true end def _section :'md5' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Key-ID"}, "key"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "maxlen"=>"16", "help-string"=>"key for the authentication"}, "preferred"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"prefer to use this key when sending packet"}} # Key-ID def name prop_get('@name') end # key for the authentication def key prop_get('key') end # key for the authentication def key=(val) prop_set('key', val) end # prefer to use this key when sending packet def preferred prop_get('preferred') end # prefer to use this key when sending packet def preferred=(val) prop_set('preferred', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Md5 def md5 if @create_children @subclasses['md5'] ||= Md5.new(parent_instance: self, create_children: @create_children) else Md5.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "type"=>"string", "maxlen"=>"16", "skip-commit-validation"=>"yes", "help-string"=>"Simple password authentication"}} def name prop_get('@name') end # Simple password authentication def password prop_get('password') end # Simple password authentication def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"15", "default"=>"10", "help-string"=>"metric to be used when advertise default route via RIP"}} # metric to be used when advertise default route via RIP def metric prop_get('metric') end # metric to be used when advertise default route via RIP def metric=(val) prop_set('metric', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#rip/auth-profile/entry/@name"]}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"normal", "enum"=> [{"value"=>"normal", "help-string"=>"send and receive"}, {"value"=>"passive", "help-string"=>"receive only"}, {"value"=>"send-only", "help-string"=>"send only, do not receive RIP updates"}]}} # interface name def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class ExportRules < XML::ConfigClass def has_multiple_values? true end def _section :'export-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"16", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#protocol/redist-profile/entry/@name"]}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"16", "help-string"=>"metric value"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExportRules def export_rules if @create_children @subclasses['export-rules'] ||= ExportRules.new(parent_instance: self, create_children: @create_children) else ExportRules.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from RIP", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to RIP", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # do not learn default route from RIP def reject_default_route prop_get('reject-default-route') end # do not learn default route from RIP def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to RIP def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to RIP def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end end # class Rip def rip @subclasses['rip'] ||= Rip.new(parent_instance: self, create_children: @create_children) end class Ospf < ConfigClass def has_multiple_values? false end def _section :'ospf' end class FloodPrevention < ConfigClass def has_multiple_values? false end def _section :'flood-prevention' end class Hello < ConfigClass def has_multiple_values? false end def _section :'hello' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-packet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "default"=>"8", "help-string"=>"Maximum of outstanding Hello packets"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum of outstanding Hello packets def max_packet prop_get('max-packet') end # Maximum of outstanding Hello packets def max_packet=(val) prop_set('max-packet', val) end end # class Hello def hello @subclasses['hello'] ||= Hello.new(parent_instance: self, create_children: @create_children) end class Lsa < ConfigClass def has_multiple_values? false end def _section :'lsa' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-packet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "default"=>"8", "help-string"=>"Maximum of outstanding LSAs"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum of outstanding LSAs def max_packet prop_get('max-packet') end # Maximum of outstanding LSAs def max_packet=(val) prop_set('max-packet', val) end end # class Lsa def lsa @subclasses['lsa'] ||= Lsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class FloodPrevention def flood_prevention @subclasses['flood-prevention'] ||= FloodPrevention.new(parent_instance: self, create_children: @create_children) end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end @props={"spf-calculation-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0.05", "max"=>"10", "default"=>"5", "help-string"=>"Delay in seconds before running the SPF algorithm"}, "lsa-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"1", "max"=>"10", "default"=>"5", "help-string"=> "The minimum time in seconds between distinct originations of any particular LSA"}} # Delay in seconds before running the SPF algorithm def spf_calculation_delay prop_get('spf-calculation-delay') end # Delay in seconds before running the SPF algorithm def spf_calculation_delay=(val) prop_set('spf-calculation-delay', val) end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval prop_get('lsa-interval') end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval=(val) prop_set('lsa-interval', val) end end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Md5 < XML::ConfigClass def has_multiple_values? true end def _section :'md5' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Key-ID"}, "key"=> {"node-type"=>"element", "encrypt"=>"yes", "type"=>"string", "skip-commit-validation"=>"yes", "maxlen"=>"16", "help-string"=>"key for the authentication"}, "preferred"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"use this key when sending packet"}} # Key-ID def name prop_get('@name') end # key for the authentication def key prop_get('key') end # key for the authentication def key=(val) prop_set('key', val) end # use this key when sending packet def preferred prop_get('preferred') end # use this key when sending packet def preferred=(val) prop_set('preferred', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Md5 def md5 if @create_children @subclasses['md5'] ||= Md5.new(parent_instance: self, create_children: @create_children) else Md5.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "type"=>"string", "maxlen"=>"8", "help-string"=>"Simple password authentication"}} def name prop_get('@name') end # Simple password authentication def password prop_get('password') end # Simple password authentication def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Normal < ConfigClass def has_multiple_values? false end def _section :'normal' end @props={} end # class Normal def normal @subclasses['normal'] ||= Normal.new(parent_instance: self, create_children: @create_children) end class Stub < ConfigClass def has_multiple_values? false end def _section :'stub' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def accept_summary prop_get('accept-summary') end def accept_summary=(val) prop_set('accept-summary', val) end end # class Stub def stub @subclasses['stub'] ||= Stub.new(parent_instance: self, create_children: @create_children) end class Nssa < ConfigClass def has_multiple_values? false end def _section :'nssa' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}, "type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"metric type to be used when advertise default route", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end # metric type to be used when advertise default route def type prop_get('type') end # metric type to be used when advertise default route def type=(val) prop_set('type', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end class NssaExtRange < XML::ConfigClass def has_multiple_values? true end def _section :'nssa-ext-range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "help-string"=>"network/prefix"}} # network/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NssaExtRange def nssa_ext_range if @create_children @subclasses['nssa-ext-range'] ||= NssaExtRange.new(parent_instance: self, create_children: @create_children) else NssaExtRange.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def accept_summary prop_get('accept-summary') end def accept_summary=(val) prop_set('accept-summary', val) end end # class Nssa def nssa @subclasses['nssa'] ||= Nssa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Range < XML::ConfigClass def has_multiple_values? true end def _section :'range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"network/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # network/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Range def range if @create_children @subclasses['range'] ||= Range.new(parent_instance: self, create_children: @create_children) else Range.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LinkType < XML::ConfigClass def has_multiple_values? true end def _section :'link-type' end class Broadcast < ConfigClass def has_multiple_values? false end def _section :'broadcast' end @props={} end # class Broadcast def broadcast @subclasses['broadcast'] ||= Broadcast.new(parent_instance: self, create_children: @create_children) end class P2p < ConfigClass def has_multiple_values? false end def _section :'p2p' end @props={} end # class P2p def p2p @subclasses['p2p'] ||= P2p.new(parent_instance: self, create_children: @create_children) end class P2mp < ConfigClass def has_multiple_values? false end def _section :'p2mp' end @props={} end # class P2mp def p2mp @subclasses['p2mp'] ||= P2mp.new(parent_instance: self, create_children: @create_children) end @props={} end # class LinkType def link_type if @create_children @subclasses['link-type'] ||= LinkType.new(parent_instance: self, create_children: @create_children) else LinkType.new(parent_instance: self) end end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes"}, "metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Cost of neighbor", "disabled"=>"yes"}} def name prop_get('@name') end # Cost of neighbor def metric prop_get('metric') end # Cost of neighbor def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../../interface/member"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable OSPF in this interface"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Suppress the sending of hello packets in this interface"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Cost of OSPF interface"}, "priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"1", "help-string"=>"Priority for OSPF designated router selection"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospf/auth-profile/entry/@name"]}, "gr-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"10", "help-string"=> "Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts"}} # interface name def name prop_get('@name') end # Enable OSPF in this interface def enable prop_get('enable') end # Enable OSPF in this interface def enable=(val) prop_set('enable', val) end # Suppress the sending of hello packets in this interface def passive prop_get('passive') end # Suppress the sending of hello packets in this interface def passive=(val) prop_set('passive', val) end # Cost of OSPF interface def metric prop_get('metric') end # Cost of OSPF interface def metric=(val) prop_set('metric', val) end # Priority for OSPF designated router selection def priority prop_get('priority') end # Priority for OSPF designated router selection def priority=(val) prop_set('priority', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay prop_get('gr-delay') end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay=(val) prop_set('gr-delay', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class VirtualLink < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"virtual-link name"}, "neighbor-id"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"neighbor router id for virtual link", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "transit-area-id"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"id of transit area, cannot be backbone, stub or NSSA", "autocomplete"=>"yes", "memberof"=> ["#ospf/area/entry[(@name != '0.0.0.0') and (type/normal)]/@name"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable this virtual link"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "disabled"=>"yes", "help-string"=> "Suppress the sending of hello packets in this virtual link"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospf/auth-profile/entry/@name"]}} # virtual-link name def name prop_get('@name') end # neighbor router id for virtual link def neighbor_id prop_get('neighbor-id') end # neighbor router id for virtual link def neighbor_id=(val) prop_set('neighbor-id', val) end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id prop_get('transit-area-id') end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id=(val) prop_set('transit-area-id', val) end # Enable this virtual link def enable prop_get('enable') end # Enable this virtual link def enable=(val) prop_set('enable', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Suppress the sending of hello packets in this virtual link def passive prop_get('passive') end # Suppress the sending of hello packets in this virtual link def passive=(val) prop_set('passive', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualLink def virtual_link if @create_children @subclasses['virtual-link'] ||= VirtualLink.new(parent_instance: self, create_children: @create_children) else VirtualLink.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"Area ID", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Area ID def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class ExportRules < XML::ConfigClass def has_multiple_values? true end def _section :'export-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#protocol/redist-profile/entry/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"help-string"=>"redistribute routes using redist-profile"}, "ipspec"=> {"subnet-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"generate subnet for redistribution"}}}, "new-path-type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"path type to be used for imported external routes", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}, "new-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"new tag value", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"metric value"}} def name prop_get('@name') end # path type to be used for imported external routes def new_path_type prop_get('new-path-type') end # path type to be used for imported external routes def new_path_type=(val) prop_set('new-path-type', val) end # new tag value def new_tag prop_get('new-tag') end # new tag value def new_tag=(val) prop_set('new-tag', val) end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExportRules def export_rules if @create_children @subclasses['export-rules'] ||= ExportRules.new(parent_instance: self, create_children: @create_children) else ExportRules.new(parent_instance: self) end end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"120", "help-string"=>"maximum local restarting time (in seconds)"}, "helper-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable helping neighboring routers to graceful restart"}, "strict-LSA-checking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable strict LSA checking. Abort GR if lsa change is detected"}, "max-neighbor-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"maximum of neighbor restart time accepted (in seconds)", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"140"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # maximum local restarting time (in seconds) def grace_period prop_get('grace-period') end # maximum local restarting time (in seconds) def grace_period=(val) prop_set('grace-period', val) end # enable/disable helping neighboring routers to graceful restart def helper_enable prop_get('helper-enable') end # enable/disable helping neighboring routers to graceful restart def helper_enable=(val) prop_set('helper-enable', val) end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking prop_get('strict-LSA-checking') end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking=(val) prop_set('strict-LSA-checking', val) end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time prop_get('max-neighbor-restart-time') end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time=(val) prop_set('max-neighbor-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end @props={"router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this OSPF instance", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from OSPF", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to OSPF", "type"=>"bool", "default"=>"no"}, "rfc1583"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"rfc-1583 compatibility"}} # router id of this OSPF instance def router_id prop_get('router-id') end # router id of this OSPF instance def router_id=(val) prop_set('router-id', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # do not learn default route from OSPF def reject_default_route prop_get('reject-default-route') end # do not learn default route from OSPF def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to OSPF def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to OSPF def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end # rfc-1583 compatibility def rfc1583 prop_get('rfc1583') end # rfc-1583 compatibility def rfc1583=(val) prop_set('rfc1583', val) end end # class Ospf def ospf @subclasses['ospf'] ||= Ospf.new(parent_instance: self, create_children: @create_children) end class Ospfv3 < ConfigClass def has_multiple_values? false end def _section :'ospfv3' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end @props={"spf-calculation-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0.05", "max"=>"10", "default"=>"5", "help-string"=>"Delay in seconds before running the SPF algorithm"}, "lsa-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"1", "max"=>"10", "default"=>"5", "help-string"=> "The minimum time in seconds between distinct originations of any particular LSA"}} # Delay in seconds before running the SPF algorithm def spf_calculation_delay prop_get('spf-calculation-delay') end # Delay in seconds before running the SPF algorithm def spf_calculation_delay=(val) prop_set('spf-calculation-delay', val) end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval prop_get('lsa-interval') end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval=(val) prop_set('lsa-interval', val) end end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end class None__6 < ConfigClass def has_multiple_values? false end def _section :'none__6' end @props={} end # class None__6 def none__6 @subclasses['none__6'] ||= None__6.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"algorithm"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"key is 192 bit"}, {"value"=>"aes-128-cbc", "help-string"=>"key is 128 bit"}, {"value"=>"aes-192-cbc", "help-string"=>"key is 192 bit"}, {"value"=>"aes-256-cbc", "help-string"=>"key is 256 bit"}, {"value"=>"null", "prune-on"=>"fips-mode"}]}, "key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=> "hex format xxxxxxxx[-xxxxxxxx]... total number of sections: 3des: 6, aes128: 4, aes192: 6, aes256: 8"}} def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: 3des: 6, aes128: 4, aes192: 6, aes256: 8 def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: 3des: 6, aes128: 4, aes192: 6, aes256: 8 def key=(val) prop_set('key', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "spi"=> {"node-type"=>"element", "help-string"=>"SPI for both inbound and outbound SA, hex format xxxxxxxx.", "type"=>"string", "regex"=>"^([0-9a-fA-F]{8})$"}} def name prop_get('@name') end # SPI for both inbound and outbound SA, hex format xxxxxxxx. def spi prop_get('spi') end # SPI for both inbound and outbound SA, hex format xxxxxxxx. def spi=(val) prop_set('spi', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Normal < ConfigClass def has_multiple_values? false end def _section :'normal' end @props={} end # class Normal def normal @subclasses['normal'] ||= Normal.new(parent_instance: self, create_children: @create_children) end class Stub < ConfigClass def has_multiple_values? false end def _section :'stub' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"16777215", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable the origination and propagation of summary LSA to this area"}} # Enable the origination and propagation of summary LSA to this area def accept_summary prop_get('accept-summary') end # Enable the origination and propagation of summary LSA to this area def accept_summary=(val) prop_set('accept-summary', val) end end # class Stub def stub @subclasses['stub'] ||= Stub.new(parent_instance: self, create_children: @create_children) end class Nssa < ConfigClass def has_multiple_values? false end def _section :'nssa' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"16777215", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}, "type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"metric type to be used when advertise default route", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end # metric type to be used when advertise default route def type prop_get('type') end # metric type to be used when advertise default route def type=(val) prop_set('type', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end class NssaExtRange < XML::ConfigClass def has_multiple_values? true end def _section :'nssa-ext-range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"network/prefix"}, "route-tag"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=>"route tag value"}} # network/prefix def name prop_get('@name') end # route tag value def route_tag prop_get('route-tag') end # route tag value def route_tag=(val) prop_set('route-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NssaExtRange def nssa_ext_range if @create_children @subclasses['nssa-ext-range'] ||= NssaExtRange.new(parent_instance: self, create_children: @create_children) else NssaExtRange.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable the origination and propagation of summary LSA to this area"}} # Enable the origination and propagation of summary LSA to this area def accept_summary prop_get('accept-summary') end # Enable the origination and propagation of summary LSA to this area def accept_summary=(val) prop_set('accept-summary', val) end end # class Nssa def nssa @subclasses['nssa'] ||= Nssa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Range < XML::ConfigClass def has_multiple_values? true end def _section :'range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"network/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # network/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Range def range if @create_children @subclasses['range'] ||= Range.new(parent_instance: self, create_children: @create_children) else Range.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LinkType < XML::ConfigClass def has_multiple_values? true end def _section :'link-type' end class Broadcast < ConfigClass def has_multiple_values? false end def _section :'broadcast' end @props={} end # class Broadcast def broadcast @subclasses['broadcast'] ||= Broadcast.new(parent_instance: self, create_children: @create_children) end class P2p < ConfigClass def has_multiple_values? false end def _section :'p2p' end @props={} end # class P2p def p2p @subclasses['p2p'] ||= P2p.new(parent_instance: self, create_children: @create_children) end class P2mp < ConfigClass def has_multiple_values? false end def _section :'p2mp' end @props={} end # class P2mp def p2mp @subclasses['p2mp'] ||= P2mp.new(parent_instance: self, create_children: @create_children) end @props={} end # class LinkType def link_type if @create_children @subclasses['link-type'] ||= LinkType.new(parent_instance: self, create_children: @create_children) else LinkType.new(parent_instance: self) end end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../../interface/member"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable OSPF in this interface"}, "instance-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=>"OSPFv3 instance ID"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Suppress the sending of hello packets in this interface"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Cost of OSPF interface"}, "priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"1", "help-string"=>"Priority for OSPF designated router selection"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospfv3/auth-profile/entry/@name"]}, "gr-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"10", "help-string"=> "Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts"}} # interface name def name prop_get('@name') end # Enable OSPF in this interface def enable prop_get('enable') end # Enable OSPF in this interface def enable=(val) prop_set('enable', val) end # OSPFv3 instance ID def instance_id prop_get('instance-id') end # OSPFv3 instance ID def instance_id=(val) prop_set('instance-id', val) end # Suppress the sending of hello packets in this interface def passive prop_get('passive') end # Suppress the sending of hello packets in this interface def passive=(val) prop_set('passive', val) end # Cost of OSPF interface def metric prop_get('metric') end # Cost of OSPF interface def metric=(val) prop_set('metric', val) end # Priority for OSPF designated router selection def priority prop_get('priority') end # Priority for OSPF designated router selection def priority=(val) prop_set('priority', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay prop_get('gr-delay') end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay=(val) prop_set('gr-delay', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class VirtualLink < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"virtual-link name"}, "neighbor-id"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"neighbor router id for virtual link", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "transit-area-id"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"id of transit area, cannot be backbone, stub or NSSA", "autocomplete"=>"yes", "memberof"=> ["#ospfv3/area/entry[(@name != '0.0.0.0') and (type/normal)]/@name"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable this virtual link"}, "interface-id"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2147483647", "help-string"=> "The interface ID assigned to the OSPFv3 virtual interface."}, "instance-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=>"OSPFv3 instance ID"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "disabled"=>"yes", "help-string"=> "Suppress the sending of hello packets in this virtual link"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospfv3/auth-profile/entry/@name"]}} # virtual-link name def name prop_get('@name') end # neighbor router id for virtual link def neighbor_id prop_get('neighbor-id') end # neighbor router id for virtual link def neighbor_id=(val) prop_set('neighbor-id', val) end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id prop_get('transit-area-id') end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id=(val) prop_set('transit-area-id', val) end # Enable this virtual link def enable prop_get('enable') end # Enable this virtual link def enable=(val) prop_set('enable', val) end # The interface ID assigned to the OSPFv3 virtual interface. def interface_id prop_get('interface-id') end # The interface ID assigned to the OSPFv3 virtual interface. def interface_id=(val) prop_set('interface-id', val) end # OSPFv3 instance ID def instance_id prop_get('instance-id') end # OSPFv3 instance ID def instance_id=(val) prop_set('instance-id', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Suppress the sending of hello packets in this virtual link def passive prop_get('passive') end # Suppress the sending of hello packets in this virtual link def passive=(val) prop_set('passive', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualLink def virtual_link if @create_children @subclasses['virtual-link'] ||= VirtualLink.new(parent_instance: self, create_children: @create_children) else VirtualLink.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"Area ID", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospfv3/auth-profile/entry/@name"]}} # Area ID def name prop_get('@name') end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class ExportRules < XML::ConfigClass def has_multiple_values? true end def _section :'export-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#protocol/redist-profile-ipv6/entry/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"help-string"=>"redistribute routes using redist-profile"}, "ipspec"=> {"ipv6-only"=>"yes", "subnet-only"=>"yes", "help-string"=>"generate subnet for redistribution"}}}, "new-path-type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"path type to be used for imported external routes", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}, "new-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"new tag value", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"16777215", "help-string"=>"metric value"}} def name prop_get('@name') end # path type to be used for imported external routes def new_path_type prop_get('new-path-type') end # path type to be used for imported external routes def new_path_type=(val) prop_set('new-path-type', val) end # new tag value def new_tag prop_get('new-tag') end # new tag value def new_tag=(val) prop_set('new-tag', val) end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExportRules def export_rules if @create_children @subclasses['export-rules'] ||= ExportRules.new(parent_instance: self, create_children: @create_children) else ExportRules.new(parent_instance: self) end end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"120", "help-string"=>"maximum local restarting time (in seconds)"}, "helper-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable helping neighboring routers to graceful restart"}, "strict-LSA-checking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable strict LSA checking. Abort GR if lsa change is detected"}, "max-neighbor-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"maximum of neighbor restart time accepted (in seconds)", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"140"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # maximum local restarting time (in seconds) def grace_period prop_get('grace-period') end # maximum local restarting time (in seconds) def grace_period=(val) prop_set('grace-period', val) end # enable/disable helping neighboring routers to graceful restart def helper_enable prop_get('helper-enable') end # enable/disable helping neighboring routers to graceful restart def helper_enable=(val) prop_set('helper-enable', val) end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking prop_get('strict-LSA-checking') end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking=(val) prop_set('strict-LSA-checking', val) end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time prop_get('max-neighbor-restart-time') end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time=(val) prop_set('max-neighbor-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end @props={"router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this OSPFv3 instance", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from OSPF", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to OSPF", "type"=>"bool", "default"=>"no"}, "disable-transit-traffic"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=> "whether OSPFv3 should set the R- and V6-bits in its Router-LSAs", "type"=>"bool", "default"=>"no"}} # router id of this OSPFv3 instance def router_id prop_get('router-id') end # router id of this OSPFv3 instance def router_id=(val) prop_set('router-id', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # do not learn default route from OSPF def reject_default_route prop_get('reject-default-route') end # do not learn default route from OSPF def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to OSPF def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to OSPF def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end # whether OSPFv3 should set the R- and V6-bits in its Router-LSAs def disable_transit_traffic prop_get('disable-transit-traffic') end # whether OSPFv3 should set the R- and V6-bits in its Router-LSAs def disable_transit_traffic=(val) prop_set('disable-transit-traffic', val) end end # class Ospfv3 def ospfv3 @subclasses['ospfv3'] ||= Ospfv3.new(parent_instance: self, create_children: @create_children) end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class RoutingOptions < ConfigClass def has_multiple_values? false end def _section :'routing-options' end class Med < ConfigClass def has_multiple_values? false end def _section :'med' end @props={"always-compare-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"always compare MEDs"}, "deterministic-med-comparison"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"deterministic MEDs comparison"}} # always compare MEDs def always_compare_med prop_get('always-compare-med') end # always compare MEDs def always_compare_med=(val) prop_set('always-compare-med', val) end # deterministic MEDs comparison def deterministic_med_comparison prop_get('deterministic-med-comparison') end # deterministic MEDs comparison def deterministic_med_comparison=(val) prop_set('deterministic-med-comparison', val) end end # class Med def med @subclasses['med'] ||= Med.new(parent_instance: self, create_children: @create_children) end class OutboundRouteFilter < ConfigClass def has_multiple_values? false end def _section :'outbound-route-filter' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ORF"}, "max-received-entries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "help-string"=>"maximum of prefixes to receive"}, "cisco-prefix-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"vendor-compatible mode"}} # enable ORF def enable prop_get('enable') end # enable ORF def enable=(val) prop_set('enable', val) end # maximum of prefixes to receive def max_received_entries prop_get('max-received-entries') end # maximum of prefixes to receive def max_received_entries=(val) prop_set('max-received-entries', val) end # vendor-compatible mode def cisco_prefix_mode prop_get('cisco-prefix-mode') end # vendor-compatible mode def cisco_prefix_mode=(val) prop_set('cisco-prefix-mode', val) end end # class OutboundRouteFilter def outbound_route_filter @subclasses['outbound-route-filter'] ||= OutboundRouteFilter.new(parent_instance: self, create_children: @create_children) end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "stale-route-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=> "time to remove stale routes after peer restart (in seconds)"}, "local-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=>"local restart time to advertise to peer (in seconds)"}, "max-peer-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=>"maximum of peer restart time accepted (in seconds)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # time to remove stale routes after peer restart (in seconds) def stale_route_time prop_get('stale-route-time') end # time to remove stale routes after peer restart (in seconds) def stale_route_time=(val) prop_set('stale-route-time', val) end # local restart time to advertise to peer (in seconds) def local_restart_time prop_get('local-restart-time') end # local restart time to advertise to peer (in seconds) def local_restart_time=(val) prop_set('local-restart-time', val) end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time prop_get('max-peer-restart-time') end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time=(val) prop_set('max-peer-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end class Aggregate < ConfigClass def has_multiple_values? false end def _section :'aggregate' end @props={"aggregate-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"aggregate route only if they have same MED attributes"}} # aggregate route only if they have same MED attributes def aggregate_med prop_get('aggregate-med') end # aggregate route only if they have same MED attributes def aggregate_med=(val) prop_set('aggregate-med', val) end end # class Aggregate def aggregate @subclasses['aggregate'] ||= Aggregate.new(parent_instance: self, create_children: @create_children) end @props={"as-format"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"2-byte", "help-string"=>"AS format", "enum"=> [{"value"=>"2-byte", "help-string"=>"2-byte AS format"}, {"value"=>"4-byte", "help-string"=>"4-byte AS format specified in rfc-4893"}]}, "default-local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"100", "help-string"=>"default local preference"}, "reflector-cluster-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"route reflector cluster ID", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "confederation-member-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"confederation requires member-AS number", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/as-number]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "rangedint"=>{"min"=>"1", "max"=>"4294967295"}}}} # AS format def as_format prop_get('as-format') end # AS format def as_format=(val) prop_set('as-format', val) end # default local preference def default_local_preference prop_get('default-local-preference') end # default local preference def default_local_preference=(val) prop_set('default-local-preference', val) end # route reflector cluster ID def reflector_cluster_id prop_get('reflector-cluster-id') end # route reflector cluster ID def reflector_cluster_id=(val) prop_set('reflector-cluster-id', val) end # confederation requires member-AS number def confederation_member_as prop_get('confederation-member-as') end # confederation requires member-AS number def confederation_member_as=(val) prop_set('confederation-member-as', val) end end # class RoutingOptions def routing_options @subclasses['routing-options'] ||= RoutingOptions.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "secret"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"shared secret for the TCP MD5 authentication"}} def name prop_get('@name') end # shared secret for the TCP MD5 authentication def secret prop_get('secret') end # shared secret for the TCP MD5 authentication def secret=(val) prop_set('secret', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class DampeningProfile < XML::ConfigClass def has_multiple_values? true end def _section :'dampening-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "cutoff"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"1000", "default"=>"1.25", "help-string"=>"cutoff threshold value"}, "reuse"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"1000", "default"=>"0.5", "help-string"=>"reuse threshold value"}, "max-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"900", "help-string"=>"maximum of hold-down time (in seconds)"}, "decay-half-life-reachable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"300", "help-string"=>"Decay half-life while reachable (in seconds)"}, "decay-half-life-unreachable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"900", "help-string"=>"Decay half-life while unreachable (in seconds)"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # cutoff threshold value def cutoff prop_get('cutoff') end # cutoff threshold value def cutoff=(val) prop_set('cutoff', val) end # reuse threshold value def reuse prop_get('reuse') end # reuse threshold value def reuse=(val) prop_set('reuse', val) end # maximum of hold-down time (in seconds) def max_hold_time prop_get('max-hold-time') end # maximum of hold-down time (in seconds) def max_hold_time=(val) prop_set('max-hold-time', val) end # Decay half-life while reachable (in seconds) def decay_half_life_reachable prop_get('decay-half-life-reachable') end # Decay half-life while reachable (in seconds) def decay_half_life_reachable=(val) prop_set('decay-half-life-reachable', val) end # Decay half-life while unreachable (in seconds) def decay_half_life_unreachable prop_get('decay-half-life-unreachable') end # Decay half-life while unreachable (in seconds) def decay_half_life_unreachable=(val) prop_set('decay-half-life-unreachable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DampeningProfile def dampening_profile if @create_children @subclasses['dampening-profile'] ||= DampeningProfile.new(parent_instance: self, create_children: @create_children) else DampeningProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class PeerGroup < XML::ConfigClass def has_multiple_values? true end def _section :'peer-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Ibgp < ConfigClass def has_multiple_values? false end def _section :'ibgp' end @props={"export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-self", "help-string"=>"override nexthop with self address"}]}} def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end end # class Ibgp def ibgp @subclasses['ibgp'] ||= Ibgp.new(parent_instance: self, create_children: @create_children) end class EbgpConfed < ConfigClass def has_multiple_values? false end def _section :'ebgp-confed' end @props={"export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-self", "help-string"=>"override nexthop with self address"}]}} def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end end # class EbgpConfed def ebgp_confed @subclasses['ebgp-confed'] ||= EbgpConfed.new(parent_instance: self, create_children: @create_children) end class IbgpConfed < ConfigClass def has_multiple_values? false end def _section :'ibgp-confed' end @props={"export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-self", "help-string"=>"override nexthop with self address"}]}} def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end end # class IbgpConfed def ibgp_confed @subclasses['ibgp-confed'] ||= IbgpConfed.new(parent_instance: self, create_children: @create_children) end class Ebgp < ConfigClass def has_multiple_values? false end def _section :'ebgp' end @props={"import-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-peer", "help-string"=>"override nexthop with peer address"}]}, "export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"resolve", "enum"=> [{"value"=>"resolve", "help-string"=>"export locally resolved nexthop"}, {"value"=>"use-self", "help-string"=>"export self address as nexthop"}]}, "remove-private-as"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"remove private AS when exporting route"}} def import_nexthop prop_get('import-nexthop') end def import_nexthop=(val) prop_set('import-nexthop', val) end def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end # remove private AS when exporting route def remove_private_as prop_get('remove-private-as') end # remove private AS when exporting route def remove_private_as=(val) prop_set('remove-private-as', val) end end # class Ebgp def ebgp @subclasses['ebgp'] ||= Ebgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Peer < XML::ConfigClass def has_multiple_values? true end def _section :'peer' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SubsequentAddressFamilyIdentifier < ConfigClass def has_multiple_values? false end def _section :'subsequent-address-family-identifier' end @props={"unicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "multicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def unicast prop_get('unicast') end def unicast=(val) prop_set('unicast', val) end def multicast prop_get('multicast') end def multicast=(val) prop_set('multicast', val) end end # class SubsequentAddressFamilyIdentifier def subsequent_address_family_identifier @subclasses['subsequent-address-family-identifier'] ||= SubsequentAddressFamilyIdentifier.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"interface to accept BGP session", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name"]}} # interface to accept BGP session def interface prop_get('interface') end # interface to accept BGP session def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"peer address configuration", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"bgp peer FQDN address object configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # peer address configuration def ip prop_get('ip') end # peer address configuration def ip=(val) prop_set('ip', val) end # bgp peer FQDN address object configuration def fqdn prop_get('fqdn') end # bgp peer FQDN address object configuration def fqdn=(val) prop_set('fqdn', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class ConnectionOptions < ConfigClass def has_multiple_values? false end def _section :'connection-options' end class IncomingBgpConnection < ConfigClass def has_multiple_values? false end def _section :'incoming-bgp-connection' end @props={"remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"65535", "default"=>"0", "help-string"=>"restrict remote port for incoming BGP connections"}, "allow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # restrict remote port for incoming BGP connections def remote_port prop_get('remote-port') end # restrict remote port for incoming BGP connections def remote_port=(val) prop_set('remote-port', val) end def allow prop_get('allow') end def allow=(val) prop_set('allow', val) end end # class IncomingBgpConnection def incoming_bgp_connection @subclasses['incoming-bgp-connection'] ||= IncomingBgpConnection.new(parent_instance: self, create_children: @create_children) end class OutgoingBgpConnection < ConfigClass def has_multiple_values? false end def _section :'outgoing-bgp-connection' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"65535", "default"=>"0", "help-string"=>"use specific local port for outgoing BGP connections"}, "allow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # use specific local port for outgoing BGP connections def local_port prop_get('local-port') end # use specific local port for outgoing BGP connections def local_port=(val) prop_set('local-port', val) end def allow prop_get('allow') end def allow=(val) prop_set('allow', val) end end # class OutgoingBgpConnection def outgoing_bgp_connection @subclasses['outgoing-bgp-connection'] ||= OutgoingBgpConnection.new(parent_instance: self, create_children: @create_children) end @props={"authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#bgp/auth-profile/entry/@name"]}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"30", "help-string"=>"keep-alive interval (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"1", "max"=>"1200", "default"=>"30"}}}, "min-route-adv-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"30", "help-string"=>"Minimum Route Advertisement Interval (in seconds)"}, "multihop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=> "IP TTL value used for sending BGP packet. set to 0 means eBGP use 2, iBGP use 255"}, "open-delay-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"240", "default"=>"0", "help-string"=>"open delay time (in seconds)"}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"90", "help-string"=>"hold time (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"3", "max"=>"3600", "default"=>"90"}}}, "idle-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"15", "help-string"=>"idle hold time (in seconds)"}} # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end # keep-alive interval (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # keep-alive interval (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval prop_get('min-route-adv-interval') end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval=(val) prop_set('min-route-adv-interval', val) end # IP TTL value used for sending BGP packet. set to 0 means eBGP use 2, iBGP use 255 def multihop prop_get('multihop') end # IP TTL value used for sending BGP packet. set to 0 means eBGP use 2, iBGP use 255 def multihop=(val) prop_set('multihop', val) end # open delay time (in seconds) def open_delay_time prop_get('open-delay-time') end # open delay time (in seconds) def open_delay_time=(val) prop_set('open-delay-time', val) end # hold time (in seconds) def hold_time prop_get('hold-time') end # hold time (in seconds) def hold_time=(val) prop_set('hold-time', val) end # idle hold time (in seconds) def idle_hold_time prop_get('idle-hold-time') end # idle hold time (in seconds) def idle_hold_time=(val) prop_set('idle-hold-time', val) end end # class ConnectionOptions def connection_options @subclasses['connection-options'] ||= ConnectionOptions.new(parent_instance: self, create_children: @create_children) end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "peer-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"peer AS number", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/as-number]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "rangedint"=>{"min"=>"1", "max"=>"4294967295"}}}, "enable-mp-bgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "address-family-identifier"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"select AFI for this peer", "enum"=> [{"value"=>"ipv4", "help-string"=>"enable IPv4 route exchange"}, {"value"=>"ipv6", "help-string"=>"enable IPv6 route exchange"}]}, "enable-sender-side-loop-detection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reflector-client"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"non-client", "help-string"=>"this peer is reflector client", "enum"=> [{"value"=>"non-client", "help-string"=>"not a reflector client"}, {"value"=>"client", "help-string"=>"reflector client"}, {"value"=>"meshed-client", "help-string"=>"fully meshed reflector client"}]}, "peering-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unspecified", "help-string"=>"peering type that affects NOPEER community value handling", "enum"=> [{"value"=>"bilateral", "help-string"=> "block sending and receiving routes with NOPEER community value"}, {"value"=>"unspecified", "help-string"=>"disregard NOPEER community value with this peer"}]}, "aggregated-confed-as-path"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "default"=>"yes", "help-string"=>"this peer understands aggregated confederation AS path"}, "max-prefixes"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"5000", "help-string"=>"maximum of prefixes to receive from peer", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"100000", "default"=>"5000"}, "enum"=>[{"value"=>"unlimited"}]}}, "max-orf-entries"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"100000", "default"=>"5000", "help-string"=>"maximum of ORF entries accepted from peer"}, "soft-reset-with-stored-info"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "default"=>"no", "help-string"=>"soft reset with stored info"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # peer AS number def peer_as prop_get('peer-as') end # peer AS number def peer_as=(val) prop_set('peer-as', val) end def enable_mp_bgp prop_get('enable-mp-bgp') end def enable_mp_bgp=(val) prop_set('enable-mp-bgp', val) end # select AFI for this peer def address_family_identifier prop_get('address-family-identifier') end # select AFI for this peer def address_family_identifier=(val) prop_set('address-family-identifier', val) end def enable_sender_side_loop_detection prop_get('enable-sender-side-loop-detection') end def enable_sender_side_loop_detection=(val) prop_set('enable-sender-side-loop-detection', val) end # this peer is reflector client def reflector_client prop_get('reflector-client') end # this peer is reflector client def reflector_client=(val) prop_set('reflector-client', val) end # peering type that affects NOPEER community value handling def peering_type prop_get('peering-type') end # peering type that affects NOPEER community value handling def peering_type=(val) prop_set('peering-type', val) end # this peer understands aggregated confederation AS path def aggregated_confed_as_path prop_get('aggregated-confed-as-path') end # this peer understands aggregated confederation AS path def aggregated_confed_as_path=(val) prop_set('aggregated-confed-as-path', val) end # maximum of prefixes to receive from peer def max_prefixes prop_get('max-prefixes') end # maximum of prefixes to receive from peer def max_prefixes=(val) prop_set('max-prefixes', val) end # maximum of ORF entries accepted from peer def max_orf_entries prop_get('max-orf-entries') end # maximum of ORF entries accepted from peer def max_orf_entries=(val) prop_set('max-orf-entries', val) end # soft reset with stored info def soft_reset_with_stored_info prop_get('soft-reset-with-stored-info') end # soft reset with stored info def soft_reset_with_stored_info=(val) prop_set('soft-reset-with-stored-info', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Peer def peer if @create_children @subclasses['peer'] ||= Peer.new(parent_instance: self, create_children: @create_children) else Peer.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "aggregated-confed-as-path"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"the peers understand aggregated confederation AS path"}, "soft-reset-with-stored-info"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"soft reset with stored info"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # the peers understand aggregated confederation AS path def aggregated_confed_as_path prop_get('aggregated-confed-as-path') end # the peers understand aggregated confederation AS path def aggregated_confed_as_path=(val) prop_set('aggregated-confed-as-path', val) end # soft reset with stored info def soft_reset_with_stored_info prop_get('soft-reset-with-stored-info') end # soft reset with stored info def soft_reset_with_stored_info=(val) prop_set('soft-reset-with-stored-info', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PeerGroup def peer_group if @create_children @subclasses['peer-group'] ||= PeerGroup.new(parent_instance: self, create_children: @create_children) else PeerGroup.new(parent_instance: self) end end class Policy < ConfigClass def has_multiple_values? false end def _section :'policy' end class Import < ConfigClass def has_multiple_values? false end def _section :'import' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsedBy < XML::ConfigClass def has_multiple_values? true end def _section :'used-by' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UsedBy def used_by if @create_children @subclasses['used-by'] ||= UsedBy.new(parent_instance: self, create_children: @create_children) else UsedBy.new(parent_instance: self) end end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end class Update < ConfigClass def has_multiple_values? false end def _section :'update' end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Remove < ConfigClass def has_multiple_values? false end def _section :'remove' end @props={} end # class Remove def remove @subclasses['remove'] ||= Remove.new(parent_instance: self, create_children: @create_children) end @props={"prepend"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=>"prepend local AS for specified number of times"}, "remove-and-prepend"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=> "remove matched AS path(s), and prepend local AS for specified number of times"}} # prepend local AS for specified number of times def prepend prop_get('prepend') end # prepend local AS for specified number of times def prepend=(val) prop_set('prepend', val) end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend prop_get('remove-and-prepend') end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend=(val) prop_set('remove-and-prepend', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new local preference value"}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new MED value"}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "help-string"=>"new weight value"}, "nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"nexthop address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"new route origin", "enum"=> [{"value"=>"igp", "help-string"=>"route originated from IGP"}, {"value"=>"egp", "help-string"=>"route originated from EGP"}, {"value"=>"incomplete"}]}, "as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add AS path limit attribute if it does not exist "}} # new local preference value def local_preference prop_get('local-preference') end # new local preference value def local_preference=(val) prop_set('local-preference', val) end # new MED value def med prop_get('med') end # new MED value def med=(val) prop_set('med', val) end # new weight value def weight prop_get('weight') end # new weight value def weight=(val) prop_set('weight', val) end # nexthop address def nexthop prop_get('nexthop') end # nexthop address def nexthop=(val) prop_set('nexthop', val) end # new route origin def origin prop_get('origin') end # new route origin def origin=(val) prop_set('origin', val) end # add AS path limit attribute if it does not exist def as_path_limit prop_get('as-path-limit') end # add AS path limit attribute if it does not exist def as_path_limit=(val) prop_set('as-path-limit', val) end end # class Update def update @subclasses['update'] ||= Update.new(parent_instance: self, create_children: @create_children) end @props={"dampening"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"route flap dampening profile", "autocomplete"=>"yes", "memberof"=>["#bgp/dampening-profile/entry/@name"]}} # route flap dampening profile def dampening prop_get('dampening') end # route flap dampening profile def dampening=(val) prop_set('dampening', val) end end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable"}} def name prop_get('@name') end # Enable def enable prop_get('enable') end # Enable def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Import def import @subclasses['import'] ||= Import.new(parent_instance: self, create_children: @create_children) end class Export < ConfigClass def has_multiple_values? false end def _section :'export' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsedBy < XML::ConfigClass def has_multiple_values? true end def _section :'used-by' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UsedBy def used_by if @create_children @subclasses['used-by'] ||= UsedBy.new(parent_instance: self, create_children: @create_children) else UsedBy.new(parent_instance: self) end end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end class Update < ConfigClass def has_multiple_values? false end def _section :'update' end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Remove < ConfigClass def has_multiple_values? false end def _section :'remove' end @props={} end # class Remove def remove @subclasses['remove'] ||= Remove.new(parent_instance: self, create_children: @create_children) end @props={"prepend"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=>"prepend local AS for specified number of times"}, "remove-and-prepend"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=> "remove matched AS path(s), and prepend local AS for specified number of times"}} # prepend local AS for specified number of times def prepend prop_get('prepend') end # prepend local AS for specified number of times def prepend=(val) prop_set('prepend', val) end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend prop_get('remove-and-prepend') end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend=(val) prop_set('remove-and-prepend', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new local preference value"}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new MED value"}, "nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"nexthop address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"new route origin", "enum"=> [{"value"=>"igp", "help-string"=>"route originated from IGP"}, {"value"=>"egp", "help-string"=>"route originated from EGP"}, {"value"=>"incomplete"}]}, "as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add AS path limit attribute if it does not exist "}} # new local preference value def local_preference prop_get('local-preference') end # new local preference value def local_preference=(val) prop_set('local-preference', val) end # new MED value def med prop_get('med') end # new MED value def med=(val) prop_set('med', val) end # nexthop address def nexthop prop_get('nexthop') end # nexthop address def nexthop=(val) prop_set('nexthop', val) end # new route origin def origin prop_get('origin') end # new route origin def origin=(val) prop_set('origin', val) end # add AS path limit attribute if it does not exist def as_path_limit prop_get('as-path-limit') end # add AS path limit attribute if it does not exist def as_path_limit=(val) prop_set('as-path-limit', val) end end # class Update def update @subclasses['update'] ||= Update.new(parent_instance: self, create_children: @create_children) end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable"}} def name prop_get('@name') end # Enable def enable prop_get('enable') end # Enable def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Export def export @subclasses['export'] ||= Export.new(parent_instance: self, create_children: @create_children) end class ConditionalAdvertisement < ConfigClass def has_multiple_values? false end def _section :'conditional-advertisement' end class Policy < XML::ConfigClass def has_multiple_values? true end def _section :'policy' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsedBy < XML::ConfigClass def has_multiple_values? true end def _section :'used-by' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UsedBy def used_by if @create_children @subclasses['used-by'] ||= UsedBy.new(parent_instance: self, create_children: @create_children) else UsedBy.new(parent_instance: self) end end class NonExistFilters < XML::ConfigClass def has_multiple_values? true end def _section :'non-exist-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this filter"}} def name prop_get('@name') end # enble this filter def enable prop_get('enable') end # enble this filter def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NonExistFilters def non_exist_filters if @create_children @subclasses['non-exist-filters'] ||= NonExistFilters.new(parent_instance: self, create_children: @create_children) else NonExistFilters.new(parent_instance: self) end end class AdvertiseFilters < XML::ConfigClass def has_multiple_values? true end def _section :'advertise-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this filter"}} def name prop_get('@name') end # enble this filter def enable prop_get('enable') end # enble this filter def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdvertiseFilters def advertise_filters if @create_children @subclasses['advertise-filters'] ||= AdvertiseFilters.new(parent_instance: self, create_children: @create_children) else AdvertiseFilters.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this policy"}} def name prop_get('@name') end # enble this policy def enable prop_get('enable') end # enble this policy def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Policy def policy if @create_children @subclasses['policy'] ||= Policy.new(parent_instance: self, create_children: @create_children) else Policy.new(parent_instance: self) end end @props={} end # class ConditionalAdvertisement def conditional_advertisement @subclasses['conditional-advertisement'] ||= ConditionalAdvertisement.new(parent_instance: self, create_children: @create_children) end class Aggregation < ConfigClass def has_multiple_values? false end def _section :'aggregation' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AggregateRouteAttributes < ConfigClass def has_multiple_values? false end def _section :'aggregate-route-attributes' end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Remove < ConfigClass def has_multiple_values? false end def _section :'remove' end @props={} end # class Remove def remove @subclasses['remove'] ||= Remove.new(parent_instance: self, create_children: @create_children) end @props={"prepend"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=>"prepend local AS for specified number of times"}, "remove-and-prepend"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=> "remove matched AS path(s), and prepend local AS for specified number of times"}} # prepend local AS for specified number of times def prepend prop_get('prepend') end # prepend local AS for specified number of times def prepend=(val) prop_set('prepend', val) end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend prop_get('remove-and-prepend') end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend=(val) prop_set('remove-and-prepend', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new local preference value"}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new MED value"}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "help-string"=>"new weight value"}, "nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"nexthop address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"new route origin", "enum"=> [{"value"=>"igp", "help-string"=>"route originated from IGP"}, {"value"=>"egp", "help-string"=>"route originated from EGP"}, {"value"=>"incomplete"}]}, "as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add AS path limit attribute if it does not exist "}} # new local preference value def local_preference prop_get('local-preference') end # new local preference value def local_preference=(val) prop_set('local-preference', val) end # new MED value def med prop_get('med') end # new MED value def med=(val) prop_set('med', val) end # new weight value def weight prop_get('weight') end # new weight value def weight=(val) prop_set('weight', val) end # nexthop address def nexthop prop_get('nexthop') end # nexthop address def nexthop=(val) prop_set('nexthop', val) end # new route origin def origin prop_get('origin') end # new route origin def origin=(val) prop_set('origin', val) end # add AS path limit attribute if it does not exist def as_path_limit prop_get('as-path-limit') end # add AS path limit attribute if it does not exist def as_path_limit=(val) prop_set('as-path-limit', val) end end # class AggregateRouteAttributes def aggregate_route_attributes @subclasses['aggregate-route-attributes'] ||= AggregateRouteAttributes.new(parent_instance: self, create_children: @create_children) end class SuppressFilters < XML::ConfigClass def has_multiple_values? true end def _section :'suppress-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this rule"}} def name prop_get('@name') end # enble this rule def enable prop_get('enable') end # enble this rule def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SuppressFilters def suppress_filters if @create_children @subclasses['suppress-filters'] ||= SuppressFilters.new(parent_instance: self, create_children: @create_children) else SuppressFilters.new(parent_instance: self) end end class AdvertiseFilters < XML::ConfigClass def has_multiple_values? true end def _section :'advertise-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this rule"}} def name prop_get('@name') end # enble this rule def enable prop_get('enable') end # enble this rule def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdvertiseFilters def advertise_filters if @create_children @subclasses['advertise-filters'] ||= AdvertiseFilters.new(parent_instance: self, create_children: @create_children) else AdvertiseFilters.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "prefix"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"aggregating address prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable aggregation for this prefix"}, "summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"summarize route"}, "as-set"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"generate AS-set attribute"}} def name prop_get('@name') end # aggregating address prefix def prefix prop_get('prefix') end # aggregating address prefix def prefix=(val) prop_set('prefix', val) end # enable aggregation for this prefix def enable prop_get('enable') end # enable aggregation for this prefix def enable=(val) prop_set('enable', val) end # summarize route def summary prop_get('summary') end # summarize route def summary=(val) prop_set('summary', val) end # generate AS-set attribute def as_set prop_get('as-set') end # generate AS-set attribute def as_set=(val) prop_set('as-set', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={} end # class Aggregation def aggregation @subclasses['aggregation'] ||= Aggregation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Policy def policy @subclasses['policy'] ||= Policy.new(parent_instance: self, create_children: @create_children) end class RedistRules < XML::ConfigClass def has_multiple_values? true end def _section :'redist-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SetCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'set-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"10", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SetCommunity def set_community if @create_children @subclasses['set-community'] ||= SetCommunity.new(parent_instance: self, create_children: @create_children) else SetCommunity.new(parent_instance: self) end end class SetExtendedCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'set-extended-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SetExtendedCommunity def set_extended_community if @create_children @subclasses['set-extended-community'] ||= SetExtendedCommunity.new(parent_instance: self, create_children: @create_children) else SetExtendedCommunity.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#protocol/redist-profile/entry/@name", "#protocol/redist-profile-ipv6/entry/@name", "#protocol/redist-profile-ipv6/entry/@name"], "multi-types"=> {"string"=> {"subtype"=>"object-name", "help-string"=>"redistribute routes using redist-profile"}, "ipspec"=> {"subnet-only"=>"yes", "help-string"=>"generate subnet for redistribution"}}}, "address-family-identifier"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "help-string"=>"select redistribution profile type", "enum"=> [{"value"=>"ipv4", "help-string"=>"choose IPv4 redistribution profiles"}, {"value"=>"ipv6", "help-string"=>"choose IPv6 redistribution profile"}]}, "route-table"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"unicast", "help-string"=>"select destination SAFI for redistribution", "enum"=> [{"value"=>"unicast", "help-string"=>"redistribute as unicast route"}, {"value"=>"multicast", "help-string"=>"redistribute as multicast route"}, {"value"=>"both", "help-string"=>"redistribute as both unicast and multicast route"}]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "set-origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"incomplete", "help-string"=>"add the ORIGIN path attribute", "enum"=> [{"value"=>"igp", "help-string"=>"Path interior to originating AS"}, {"value"=>"egp", "help-string"=>"Path learned via EGP protocol"}, {"value"=>"incomplete", "help-string"=>"Path was learned by some other means"}]}, "set-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"add the MULTI_EXIT_DISC path attribute"}, "set-local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"add the LOCAL_PREF path attribute"}, "set-as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add the AS_PATHLIMIT path attribute"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"metric value"}} def name prop_get('@name') end # select redistribution profile type def address_family_identifier prop_get('address-family-identifier') end # select redistribution profile type def address_family_identifier=(val) prop_set('address-family-identifier', val) end # select destination SAFI for redistribution def route_table prop_get('route-table') end # select destination SAFI for redistribution def route_table=(val) prop_set('route-table', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # add the ORIGIN path attribute def set_origin prop_get('set-origin') end # add the ORIGIN path attribute def set_origin=(val) prop_set('set-origin', val) end # add the MULTI_EXIT_DISC path attribute def set_med prop_get('set-med') end # add the MULTI_EXIT_DISC path attribute def set_med=(val) prop_set('set-med', val) end # add the LOCAL_PREF path attribute def set_local_preference prop_get('set-local-preference') end # add the LOCAL_PREF path attribute def set_local_preference=(val) prop_set('set-local-preference', val) end # add the AS_PATHLIMIT path attribute def set_as_path_limit prop_get('set-as-path-limit') end # add the AS_PATHLIMIT path attribute def set_as_path_limit=(val) prop_set('set-as-path-limit', val) end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistRules def redist_rules if @create_children @subclasses['redist-rules'] ||= RedistRules.new(parent_instance: self, create_children: @create_children) else RedistRules.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this BGP instance", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "local-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"local AS number", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/as-number]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "rangedint"=>{"min"=>"1", "max"=>"4294967295"}}}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from BGP", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to BGP", "type"=>"bool", "default"=>"no"}, "install-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Populate BGP learned route to global route table", "type"=>"bool", "default"=>"no"}, "ecmp-multi-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Support multiple AS in ECMP", "type"=>"bool", "default"=>"no"}, "enforce-first-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enforce First AS for EBGP", "type"=>"bool", "default"=>"yes"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # router id of this BGP instance def router_id prop_get('router-id') end # router id of this BGP instance def router_id=(val) prop_set('router-id', val) end # local AS number def local_as prop_get('local-as') end # local AS number def local_as=(val) prop_set('local-as', val) end # do not learn default route from BGP def reject_default_route prop_get('reject-default-route') end # do not learn default route from BGP def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to BGP def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to BGP def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end # Populate BGP learned route to global route table def install_route prop_get('install-route') end # Populate BGP learned route to global route table def install_route=(val) prop_set('install-route', val) end # Support multiple AS in ECMP def ecmp_multi_as prop_get('ecmp-multi-as') end # Support multiple AS in ECMP def ecmp_multi_as=(val) prop_set('ecmp-multi-as', val) end # Enforce First AS for EBGP def enforce_first_as prop_get('enforce-first-as') end # Enforce First AS for EBGP def enforce_first_as=(val) prop_set('enforce-first-as', val) end end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class AdminDists < ConfigClass def has_multiple_values? false end def _section :'admin-dists' end @props={"static"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"10", "help-string"=>"administrative distance used for static routes"}, "static-ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"10", "help-string"=>"administrative distance used for ipv6 static routes"}, "ospf-int"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"30", "help-string"=>"administrative distance used for OSPF internal routes"}, "ospf-ext"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"110", "help-string"=>"administrative distance used for OSPF external routes"}, "ospfv3-int"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"30", "help-string"=>"administrative distance used for OSPFv3 internal routes"}, "ospfv3-ext"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"110", "help-string"=>"administrative distance used for OSPFv3 external routes"}, "ibgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"200", "help-string"=>"administrative distance used for iBGP routes"}, "ebgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"20", "help-string"=>"administrative distance used for eBGP routes"}, "rip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"120", "help-string"=>"administrative distance used for RIP routes"}} # administrative distance used for static routes def static prop_get('static') end # administrative distance used for static routes def static=(val) prop_set('static', val) end # administrative distance used for ipv6 static routes def static_ipv6 prop_get('static-ipv6') end # administrative distance used for ipv6 static routes def static_ipv6=(val) prop_set('static-ipv6', val) end # administrative distance used for OSPF internal routes def ospf_int prop_get('ospf-int') end # administrative distance used for OSPF internal routes def ospf_int=(val) prop_set('ospf-int', val) end # administrative distance used for OSPF external routes def ospf_ext prop_get('ospf-ext') end # administrative distance used for OSPF external routes def ospf_ext=(val) prop_set('ospf-ext', val) end # administrative distance used for OSPFv3 internal routes def ospfv3_int prop_get('ospfv3-int') end # administrative distance used for OSPFv3 internal routes def ospfv3_int=(val) prop_set('ospfv3-int', val) end # administrative distance used for OSPFv3 external routes def ospfv3_ext prop_get('ospfv3-ext') end # administrative distance used for OSPFv3 external routes def ospfv3_ext=(val) prop_set('ospfv3-ext', val) end # administrative distance used for iBGP routes def ibgp prop_get('ibgp') end # administrative distance used for iBGP routes def ibgp=(val) prop_set('ibgp', val) end # administrative distance used for eBGP routes def ebgp prop_get('ebgp') end # administrative distance used for eBGP routes def ebgp=(val) prop_set('ebgp', val) end # administrative distance used for RIP routes def rip prop_get('rip') end # administrative distance used for RIP routes def rip=(val) prop_set('rip', val) end end # class AdminDists def admin_dists @subclasses['admin-dists'] ||= AdminDists.new(parent_instance: self, create_children: @create_children) end class Ecmp < ConfigClass def has_multiple_values? false end def _section :'ecmp' end class Algorithm < ConfigClass def has_multiple_values? false end def _section :'algorithm' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"src-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"only use source address for hash", "uiHint-fieldLabel"=>"Use Source Address Only"}, "use-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"use source/destination port for hash"}, "hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"0", "help-string"=>"User-specified hash seed"}} # only use source address for hash def src_only prop_get('src-only') end # only use source address for hash def src_only=(val) prop_set('src-only', val) end # use source/destination port for hash def use_port prop_get('use-port') end # use source/destination port for hash def use_port=(val) prop_set('use-port', val) end # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end class WeightedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'weighted-round-robin' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../interface/member"]}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"100", "help-string"=>"interface ECMP weight"}} # interface name def name prop_get('@name') end # interface ECMP weight def weight prop_get('weight') end # interface ECMP weight def weight=(val) prop_set('weight', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class WeightedRoundRobin def weighted_round_robin @subclasses['weighted-round-robin'] ||= WeightedRoundRobin.new(parent_instance: self, create_children: @create_children) end class BalancedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'balanced-round-robin' end @props={} end # class BalancedRoundRobin def balanced_round_robin @subclasses['balanced-round-robin'] ||= BalancedRoundRobin.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart"}, "max-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"4", "default"=>"2", "help-string"=> "Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart"}, "symmetric-return"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "allows return packets to egress out of the ingress interface of the flow"}, "strict-source-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "force VPN traffic to exit interface that the source-ip belongs to"}} # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable prop_get('enable') end # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable=(val) prop_set('enable', val) end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path prop_get('max-path') end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path=(val) prop_set('max-path', val) end # allows return packets to egress out of the ingress interface of the flow def symmetric_return prop_get('symmetric-return') end # allows return packets to egress out of the ingress interface of the flow def symmetric_return=(val) prop_set('symmetric-return', val) end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path prop_get('strict-source-path') end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path=(val) prop_set('strict-source-path', val) end end # class Ecmp def ecmp @subclasses['ecmp'] ||= Ecmp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualRouter def virtual_router if @create_children @subclasses['virtual-router'] ||= VirtualRouter.new(parent_instance: self, create_children: @create_children) else VirtualRouter.new(parent_instance: self) end end class LogicalRouter < XML::ConfigClass def has_multiple_values? true end def _section :'logical-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vrf < XML::ConfigClass def has_multiple_values? true end def _section :'vrf' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class Med < ConfigClass def has_multiple_values? false end def _section :'med' end @props={"always-compare-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"always compare MEDs"}, "deterministic-med-comparison"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"deterministic MEDs comparison"}} # always compare MEDs def always_compare_med prop_get('always-compare-med') end # always compare MEDs def always_compare_med=(val) prop_set('always-compare-med', val) end # deterministic MEDs comparison def deterministic_med_comparison prop_get('deterministic-med-comparison') end # deterministic MEDs comparison def deterministic_med_comparison=(val) prop_set('deterministic-med-comparison', val) end end # class Med def med @subclasses['med'] ||= Med.new(parent_instance: self, create_children: @create_children) end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "stale-route-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=> "time to remove stale routes after peer restart (in seconds)"}, "max-peer-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=>"maximum of peer restart time accepted (in seconds)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # time to remove stale routes after peer restart (in seconds) def stale_route_time prop_get('stale-route-time') end # time to remove stale routes after peer restart (in seconds) def stale_route_time=(val) prop_set('stale-route-time', val) end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time prop_get('max-peer-restart-time') end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time=(val) prop_set('max-peer-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end class PeerGroup < XML::ConfigClass def has_multiple_values? true end def _section :'peer-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Ibgp < ConfigClass def has_multiple_values? false end def _section :'ibgp' end @props={} end # class Ibgp def ibgp @subclasses['ibgp'] ||= Ibgp.new(parent_instance: self, create_children: @create_children) end class Ebgp < ConfigClass def has_multiple_values? false end def _section :'ebgp' end @props={} end # class Ebgp def ebgp @subclasses['ebgp'] ||= Ebgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class AddressFamily < ConfigClass def has_multiple_values? false end def _section :'address-family' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv4/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv6/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class AddressFamily def address_family @subclasses['address-family'] ||= AddressFamily.new(parent_instance: self, create_children: @create_children) end class ConnectionOptions < ConfigClass def has_multiple_values? false end def _section :'connection-options' end @props={"timers"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Timer Profile", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Timer Profile Name", "autocomplete"=>"yes", "memberof"=>["#network/routing-profile/bgp/timer-profile/entry/@name"]}, "multihop"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Multi Hop", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=>"Multi-hop value"}, "authentication"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Auth Profile", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Authentication Profile Name", "autocomplete"=>"yes", "memberof"=>["#network/routing-profile/bgp/auth-profile/entry/@name"]}} # Timer Profile Name def timers prop_get('timers') end # Timer Profile Name def timers=(val) prop_set('timers', val) end # Multi-hop value def multihop prop_get('multihop') end # Multi-hop value def multihop=(val) prop_set('multihop', val) end # Authentication Profile Name def authentication prop_get('authentication') end # Authentication Profile Name def authentication=(val) prop_set('authentication', val) end end # class ConnectionOptions def connection_options @subclasses['connection-options'] ||= ConnectionOptions.new(parent_instance: self, create_children: @create_children) end class Peer < XML::ConfigClass def has_multiple_values? true end def _section :'peer' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AddressFamily < ConfigClass def has_multiple_values? false end def _section :'address-family' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv4/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv6/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={"inherit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Inherit AFI/SAFI config from peer-group"}} # Inherit AFI/SAFI config from peer-group def inherit prop_get('inherit') end # Inherit AFI/SAFI config from peer-group def inherit=(val) prop_set('inherit', val) end end # class AddressFamily def address_family @subclasses['address-family'] ||= AddressFamily.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"interface to accept BGP session", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name"]}} # interface to accept BGP session def interface prop_get('interface') end # interface to accept BGP session def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"peer address configuration", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # peer address configuration def ip prop_get('ip') end # peer address configuration def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class ConnectionOptions < ConfigClass def has_multiple_values? false end def _section :'connection-options' end @props={"timers"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Timer Profile", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Timer Profile Name", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"inherit", "help-string"=>"Inherit from Peer-Group"}]}}, "multihop"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Multi Hop", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Multi-hop value", "multi-types"=> {"rangedint"=> {"min"=>"0", "max"=>"255", "default"=>"0", "help-string"=> "IP TTL value used for sending BGP packet. set to 0 means eBGP use 1, iBGP use 255"}, "enum"=> [{"value"=>"inherit", "help-string"=>"Inherit from Peer-Group"}]}}, "authentication"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Auth Profile", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Authentication Profile Name", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"inherit", "help-string"=>"Inherit from Peer-Group"}]}}} # Timer Profile Name def timers prop_get('timers') end # Timer Profile Name def timers=(val) prop_set('timers', val) end # Multi-hop value def multihop prop_get('multihop') end # Multi-hop value def multihop=(val) prop_set('multihop', val) end # Authentication Profile Name def authentication prop_get('authentication') end # Authentication Profile Name def authentication=(val) prop_set('authentication', val) end end # class ConnectionOptions def connection_options @subclasses['connection-options'] ||= ConnectionOptions.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "peer-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=>"Peer AS number"}, "enable-sender-side-loop-detection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Peer AS number def peer_as prop_get('peer-as') end # Peer AS number def peer_as=(val) prop_set('peer-as', val) end def enable_sender_side_loop_detection prop_get('enable-sender-side-loop-detection') end def enable_sender_side_loop_detection=(val) prop_set('enable-sender-side-loop-detection', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Peer def peer if @create_children @subclasses['peer'] ||= Peer.new(parent_instance: self, create_children: @create_children) else Peer.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PeerGroup def peer_group if @create_children @subclasses['peer-group'] ||= PeerGroup.new(parent_instance: self, create_children: @create_children) else PeerGroup.new(parent_instance: self) end end class RedistributionRule < ConfigClass def has_multiple_values? false end def _section :'redistribution-rule' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Redistribution Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/redistribution-profile/entry[ipv4/unicast]/@name"]}} # Redistribution Profile Name def unicast prop_get('unicast') end # Redistribution Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Redistribution Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/redistribution-profile/entry[ipv6/unicast]/@name"]}} # Redistribution Profile Name def unicast prop_get('unicast') end # Redistribution Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class RedistributionRule def redistribution_rule @subclasses['redistribution-rule'] ||= RedistributionRule.new(parent_instance: self, create_children: @create_children) end class AddressFamilyIdentifier < ConfigClass def has_multiple_values? false end def _section :'address-family-identifier' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end class Network < XML::ConfigClass def has_multiple_values? true end def _section :'network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "subnet-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"Destination IP address/prefix"}, "unicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Unicast Network configuration"}} # Destination IP address/prefix def name prop_get('@name') end # Unicast Network configuration def unicast prop_get('unicast') end # Unicast Network configuration def unicast=(val) prop_set('unicast', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Network def network if @create_children @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) else Network.new(parent_instance: self) end end @props={} end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Network < XML::ConfigClass def has_multiple_values? true end def _section :'network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "subnet-only"=>"yes", "ipv6-only"=>"yes", "help-string"=>"Destination IP address/prefix"}, "unicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Unicast Network configuration"}} # Destination IP address/prefix def name prop_get('@name') end # Unicast Network configuration def unicast prop_get('unicast') end # Unicast Network configuration def unicast=(val) prop_set('unicast', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Network def network if @create_children @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) else Network.new(parent_instance: self) end end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class AddressFamilyIdentifier def address_family_identifier @subclasses['address-family-identifier'] ||= AddressFamilyIdentifier.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this BGP instance", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enforce-first-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enforce First AS for EBGP", "type"=>"bool", "default"=>"yes"}, "fast-external-failover"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=> "Immediately reset session if a link to a directly connected external peer goes down", "type"=>"bool", "default"=>"yes"}, "ecmp-multi-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Support multiple AS in ECMP", "type"=>"bool", "default"=>"no"}, "local-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=>"local AS number"}, "default-local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"100", "help-string"=>"default local preference"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # router id of this BGP instance def router_id prop_get('router-id') end # router id of this BGP instance def router_id=(val) prop_set('router-id', val) end # Enforce First AS for EBGP def enforce_first_as prop_get('enforce-first-as') end # Enforce First AS for EBGP def enforce_first_as=(val) prop_set('enforce-first-as', val) end # Immediately reset session if a link to a directly connected external peer goes down def fast_external_failover prop_get('fast-external-failover') end # Immediately reset session if a link to a directly connected external peer goes down def fast_external_failover=(val) prop_set('fast-external-failover', val) end # Support multiple AS in ECMP def ecmp_multi_as prop_get('ecmp-multi-as') end # Support multiple AS in ECMP def ecmp_multi_as=(val) prop_set('ecmp-multi-as', val) end # local AS number def local_as prop_get('local-as') end # local AS number def local_as=(val) prop_set('local-as', val) end # default local preference def default_local_preference prop_get('default-local-preference') end # default local preference def default_local_preference=(val) prop_set('default-local-preference', val) end end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end class RoutingTable < ConfigClass def has_multiple_values? false end def _section :'routing-table' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"DHCP", "help-string"=>"Use DHCP Client address"}]}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ipv6-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Next hop IP address def ipv6_address prop_get('ipv6-address') end # Next hop IP address def ipv6_address=(val) prop_set('ipv6-address', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name"], "multi-types"=>{"string"=>{}}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(vrf)/interface/member"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class RoutingTable def routing_table @subclasses['routing-table'] ||= RoutingTable.new(parent_instance: self, create_children: @create_children) end class Ecmp < ConfigClass def has_multiple_values? false end def _section :'ecmp' end class Algorithm < ConfigClass def has_multiple_values? false end def _section :'algorithm' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"src-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"only use source address for hash", "uiHint-fieldLabel"=>"Use Source Address Only"}, "use-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"use source/destination port for hash"}, "hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"0", "help-string"=>"User-specified hash seed"}} # only use source address for hash def src_only prop_get('src-only') end # only use source address for hash def src_only=(val) prop_set('src-only', val) end # use source/destination port for hash def use_port prop_get('use-port') end # use source/destination port for hash def use_port=(val) prop_set('use-port', val) end # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end class WeightedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'weighted-round-robin' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../interface/member"]}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"100", "help-string"=>"interface ECMP weight"}} # interface name def name prop_get('@name') end # interface ECMP weight def weight prop_get('weight') end # interface ECMP weight def weight=(val) prop_set('weight', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class WeightedRoundRobin def weighted_round_robin @subclasses['weighted-round-robin'] ||= WeightedRoundRobin.new(parent_instance: self, create_children: @create_children) end class BalancedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'balanced-round-robin' end @props={} end # class BalancedRoundRobin def balanced_round_robin @subclasses['balanced-round-robin'] ||= BalancedRoundRobin.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart"}, "max-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"4", "default"=>"2", "help-string"=> "Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart"}, "symmetric-return"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "allows return packets to egress out of the ingress interface of the flow"}, "strict-source-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "force VPN traffic to exit interface that the source-ip belongs to"}} # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable prop_get('enable') end # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable=(val) prop_set('enable', val) end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path prop_get('max-path') end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path=(val) prop_set('max-path', val) end # allows return packets to egress out of the ingress interface of the flow def symmetric_return prop_get('symmetric-return') end # allows return packets to egress out of the ingress interface of the flow def symmetric_return=(val) prop_set('symmetric-return', val) end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path prop_get('strict-source-path') end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path=(val) prop_set('strict-source-path', val) end end # class Ecmp def ecmp @subclasses['ecmp'] ||= Ecmp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "subtype"=>"object-name", "help-string"=>"VRF Name", "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"default", "help-string"=>"Default VRF"}]}}} # VRF Name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vrf def vrf if @create_children @subclasses['vrf'] ||= Vrf.new(parent_instance: self, create_children: @create_children) else Vrf.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogicalRouter def logical_router if @create_children @subclasses['logical-router'] ||= LogicalRouter.new(parent_instance: self, create_children: @create_children) else LogicalRouter.new(parent_instance: self) end end class RoutingProfile < ConfigClass def has_multiple_values? false end def _section :'routing-profile' end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "secret"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9!@#%^])+$", "ui-hint"=>"regexText:\"Only alphanumeric and !@#%^ are allowed to use\"", "maxlen"=>"63", "help-string"=> "shared secret for the TCP MD5 authentication, [a-zA-Z0-9!@#%^]"}} def name prop_get('@name') end # shared secret for the TCP MD5 authentication, [a-zA-Z0-9!@#%^] def secret prop_get('secret') end # shared secret for the TCP MD5 authentication, [a-zA-Z0-9!@#%^] def secret=(val) prop_set('secret', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class TimerProfile < XML::ConfigClass def has_multiple_values? true end def _section :'timer-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"Timer Profile Name"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"30", "help-string"=>"keep-alive interval (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"1", "max"=>"1200", "default"=>"30"}}}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"90", "help-string"=>"hold time (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"3", "max"=>"3600", "default"=>"90"}}}, "min-route-adv-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"30", "help-string"=>"Minimum Route Advertisement Interval (in seconds)"}} # Timer Profile Name def name prop_get('@name') end # keep-alive interval (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # keep-alive interval (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # hold time (in seconds) def hold_time prop_get('hold-time') end # hold time (in seconds) def hold_time=(val) prop_set('hold-time', val) end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval prop_get('min-route-adv-interval') end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval=(val) prop_set('min-route-adv-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TimerProfile def timer_profile if @create_children @subclasses['timer-profile'] ||= TimerProfile.new(parent_instance: self, create_children: @create_children) else TimerProfile.new(parent_instance: self) end end class AddressFamilyProfile < XML::ConfigClass def has_multiple_values? true end def _section :'address-family-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class AddPath < ConfigClass def has_multiple_values? false end def _section :'add-path' end @props={"tx-all-paths"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise all paths to a peer"}, "tx-bestpath-per-AS"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise the bestpath per each neighboring AS"}} # Advertise all paths to a peer def tx_all_paths prop_get('tx-all-paths') end # Advertise all paths to a peer def tx_all_paths=(val) prop_set('tx-all-paths', val) end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS prop_get('tx-bestpath-per-AS') end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS=(val) prop_set('tx-bestpath-per-AS', val) end end # class AddPath def add_path @subclasses['add-path'] ||= AddPath.new(parent_instance: self, create_children: @create_children) end class AllowasIn < ConfigClass def has_multiple_values? false end def _section :'allowas-in' end class Origin < ConfigClass def has_multiple_values? false end def _section :'origin' end @props={} end # class Origin def origin @subclasses['origin'] ||= Origin.new(parent_instance: self, create_children: @create_children) end @props={"occurrence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"1", "help-string"=>"Number of occurrences of AS number"}} # Number of occurrences of AS number def occurrence prop_get('occurrence') end # Number of occurrences of AS number def occurrence=(val) prop_set('occurrence', val) end end # class AllowasIn def allowas_in @subclasses['allowas-in'] ||= AllowasIn.new(parent_instance: self, create_children: @create_children) end class MaximumPrefix < ConfigClass def has_multiple_values? false end def _section :'maximum-prefix' end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class WarningOnly < ConfigClass def has_multiple_values? false end def _section :'warning-only' end @props={} end # class WarningOnly def warning_only @subclasses['warning-only'] ||= WarningOnly.new(parent_instance: self, create_children: @create_children) end class Restart < ConfigClass def has_multiple_values? false end def _section :'restart' end @props={"interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1", "help-string"=>"Restart interval in minutes"}} # Restart interval in minutes def interval prop_get('interval') end # Restart interval in minutes def interval=(val) prop_set('interval', val) end end # class Restart def restart @subclasses['restart'] ||= Restart.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"num_prefixes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "default"=>"1000", "help-string"=>"Max allowed prefixes from this peer"}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"100", "default"=>"100", "help-string"=>"Threshold value (%) at which to generate a warning msg"}} # Max allowed prefixes from this peer def num_prefixes prop_get('num_prefixes') end # Max allowed prefixes from this peer def num_prefixes=(val) prop_set('num_prefixes', val) end # Threshold value (%) at which to generate a warning msg def threshold prop_get('threshold') end # Threshold value (%) at which to generate a warning msg def threshold=(val) prop_set('threshold', val) end end # class MaximumPrefix def maximum_prefix @subclasses['maximum-prefix'] ||= MaximumPrefix.new(parent_instance: self, create_children: @create_children) end class NextHop < ConfigClass def has_multiple_values? false end def _section :'next-hop' end class Self < ConfigClass def has_multiple_values? false end def _section :'self' end @props={} end # class Self def self @subclasses['self'] ||= Self.new(parent_instance: self, create_children: @create_children) end class SelfForce < ConfigClass def has_multiple_values? false end def _section :'self-force' end @props={} end # class SelfForce def self_force @subclasses['self-force'] ||= SelfForce.new(parent_instance: self, create_children: @create_children) end @props={} end # class NextHop def next_hop @subclasses['next-hop'] ||= NextHop.new(parent_instance: self, create_children: @create_children) end class RemovePrivateAS < ConfigClass def has_multiple_values? false end def _section :'remove-private-AS' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class ReplaceAS < ConfigClass def has_multiple_values? false end def _section :'replace-AS' end @props={} end # class ReplaceAS def replace_AS @subclasses['replace-AS'] ||= ReplaceAS.new(parent_instance: self, create_children: @create_children) end @props={} end # class RemovePrivateAS def remove_private_AS @subclasses['remove-private-AS'] ||= RemovePrivateAS.new(parent_instance: self, create_children: @create_children) end class SendCommunity < ConfigClass def has_multiple_values? false end def _section :'send-community' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class Both < ConfigClass def has_multiple_values? false end def _section :'both' end @props={} end # class Both def both @subclasses['both'] ||= Both.new(parent_instance: self, create_children: @create_children) end class Extended < ConfigClass def has_multiple_values? false end def _section :'extended' end @props={} end # class Extended def extended @subclasses['extended'] ||= Extended.new(parent_instance: self, create_children: @create_children) end class Large < ConfigClass def has_multiple_values? false end def _section :'large' end @props={} end # class Large def large @subclasses['large'] ||= Large.new(parent_instance: self, create_children: @create_children) end class Standard < ConfigClass def has_multiple_values? false end def _section :'standard' end @props={} end # class Standard def standard @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) end @props={} end # class SendCommunity def send_community @subclasses['send-community'] ||= SendCommunity.new(parent_instance: self, create_children: @create_children) end @props={"as-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Override ASNs in outbound updates if AS-Path equals Remote-AS"}, "default-originate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Originate Default Route"}, "route-reflector-client"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Route Reflector Client"}} # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override prop_get('as-override') end # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override=(val) prop_set('as-override', val) end # Originate Default Route def default_originate prop_get('default-originate') end # Originate Default Route def default_originate=(val) prop_set('default-originate', val) end # Route Reflector Client def route_reflector_client prop_get('route-reflector-client') end # Route Reflector Client def route_reflector_client=(val) prop_set('route-reflector-client', val) end end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class AddPath < ConfigClass def has_multiple_values? false end def _section :'add-path' end @props={"tx-all-paths"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise all paths to a peer"}, "tx-bestpath-per-AS"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise the bestpath per each neighboring AS"}} # Advertise all paths to a peer def tx_all_paths prop_get('tx-all-paths') end # Advertise all paths to a peer def tx_all_paths=(val) prop_set('tx-all-paths', val) end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS prop_get('tx-bestpath-per-AS') end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS=(val) prop_set('tx-bestpath-per-AS', val) end end # class AddPath def add_path @subclasses['add-path'] ||= AddPath.new(parent_instance: self, create_children: @create_children) end class AllowasIn < ConfigClass def has_multiple_values? false end def _section :'allowas-in' end class Origin < ConfigClass def has_multiple_values? false end def _section :'origin' end @props={} end # class Origin def origin @subclasses['origin'] ||= Origin.new(parent_instance: self, create_children: @create_children) end @props={"occurrence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"1", "help-string"=>"Number of occurrences of AS number"}} # Number of occurrences of AS number def occurrence prop_get('occurrence') end # Number of occurrences of AS number def occurrence=(val) prop_set('occurrence', val) end end # class AllowasIn def allowas_in @subclasses['allowas-in'] ||= AllowasIn.new(parent_instance: self, create_children: @create_children) end class MaximumPrefix < ConfigClass def has_multiple_values? false end def _section :'maximum-prefix' end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class WarningOnly < ConfigClass def has_multiple_values? false end def _section :'warning-only' end @props={} end # class WarningOnly def warning_only @subclasses['warning-only'] ||= WarningOnly.new(parent_instance: self, create_children: @create_children) end class Restart < ConfigClass def has_multiple_values? false end def _section :'restart' end @props={"interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1", "help-string"=>"Restart interval in minutes"}} # Restart interval in minutes def interval prop_get('interval') end # Restart interval in minutes def interval=(val) prop_set('interval', val) end end # class Restart def restart @subclasses['restart'] ||= Restart.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"num_prefixes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "default"=>"1000", "help-string"=>"Max allowed prefixes from this peer"}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"100", "default"=>"100", "help-string"=>"Threshold value (%) at which to generate a warning msg"}} # Max allowed prefixes from this peer def num_prefixes prop_get('num_prefixes') end # Max allowed prefixes from this peer def num_prefixes=(val) prop_set('num_prefixes', val) end # Threshold value (%) at which to generate a warning msg def threshold prop_get('threshold') end # Threshold value (%) at which to generate a warning msg def threshold=(val) prop_set('threshold', val) end end # class MaximumPrefix def maximum_prefix @subclasses['maximum-prefix'] ||= MaximumPrefix.new(parent_instance: self, create_children: @create_children) end class NextHop < ConfigClass def has_multiple_values? false end def _section :'next-hop' end class Self < ConfigClass def has_multiple_values? false end def _section :'self' end @props={} end # class Self def self @subclasses['self'] ||= Self.new(parent_instance: self, create_children: @create_children) end class SelfForce < ConfigClass def has_multiple_values? false end def _section :'self-force' end @props={} end # class SelfForce def self_force @subclasses['self-force'] ||= SelfForce.new(parent_instance: self, create_children: @create_children) end @props={} end # class NextHop def next_hop @subclasses['next-hop'] ||= NextHop.new(parent_instance: self, create_children: @create_children) end class RemovePrivateAS < ConfigClass def has_multiple_values? false end def _section :'remove-private-AS' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class ReplaceAS < ConfigClass def has_multiple_values? false end def _section :'replace-AS' end @props={} end # class ReplaceAS def replace_AS @subclasses['replace-AS'] ||= ReplaceAS.new(parent_instance: self, create_children: @create_children) end @props={} end # class RemovePrivateAS def remove_private_AS @subclasses['remove-private-AS'] ||= RemovePrivateAS.new(parent_instance: self, create_children: @create_children) end class SendCommunity < ConfigClass def has_multiple_values? false end def _section :'send-community' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class Both < ConfigClass def has_multiple_values? false end def _section :'both' end @props={} end # class Both def both @subclasses['both'] ||= Both.new(parent_instance: self, create_children: @create_children) end class Extended < ConfigClass def has_multiple_values? false end def _section :'extended' end @props={} end # class Extended def extended @subclasses['extended'] ||= Extended.new(parent_instance: self, create_children: @create_children) end class Large < ConfigClass def has_multiple_values? false end def _section :'large' end @props={} end # class Large def large @subclasses['large'] ||= Large.new(parent_instance: self, create_children: @create_children) end class Standard < ConfigClass def has_multiple_values? false end def _section :'standard' end @props={} end # class Standard def standard @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) end @props={} end # class SendCommunity def send_community @subclasses['send-community'] ||= SendCommunity.new(parent_instance: self, create_children: @create_children) end @props={"as-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Override ASNs in outbound updates if AS-Path equals Remote-AS"}, "default-originate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Originate Default Route"}, "route-reflector-client"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Route Reflector Client"}} # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override prop_get('as-override') end # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override=(val) prop_set('as-override', val) end # Originate Default Route def default_originate prop_get('default-originate') end # Originate Default Route def default_originate=(val) prop_set('default-originate', val) end # Route Reflector Client def route_reflector_client prop_get('route-reflector-client') end # Route Reflector Client def route_reflector_client=(val) prop_set('route-reflector-client', val) end end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"Address Family Profile Name"}} # Address Family Profile Name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressFamilyProfile def address_family_profile if @create_children @subclasses['address-family-profile'] ||= AddressFamilyProfile.new(parent_instance: self, create_children: @create_children) else AddressFamilyProfile.new(parent_instance: self) end end class RedistributionProfile < XML::ConfigClass def has_multiple_values? true end def _section :'redistribution-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class Connected < ConfigClass def has_multiple_values? false end def _section :'connected' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Connected def connected @subclasses['connected'] ||= Connected.new(parent_instance: self, create_children: @create_children) end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class Connected < ConfigClass def has_multiple_values? false end def _section :'connected' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Connected def connected @subclasses['connected'] ||= Connected.new(parent_instance: self, create_children: @create_children) end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"Redistribution Profile Name"}} # Redistribution Profile Name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistributionProfile def redistribution_profile if @create_children @subclasses['redistribution-profile'] ||= RedistributionProfile.new(parent_instance: self, create_children: @create_children) else RedistributionProfile.new(parent_instance: self) end end @props={} end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class RoutingProfile def routing_profile @subclasses['routing-profile'] ||= RoutingProfile.new(parent_instance: self, create_children: @create_children) end class DnsProxy < XML::ConfigClass def has_multiple_values? true end def _section :'dns-proxy' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(dhcp-client) and not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(dhcp-client) and not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "string('loopback')"]}} # Interface name def member prop_get('member') end # Interface name def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "name(../../../../../interface/vlan[dhcp-client])", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end @props={"primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "enum"=>[{"value"=>"inherited"}]}}} # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class DomainServers < XML::ConfigClass def has_multiple_values? true end def _section :'domain-servers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DomainName < XML::ConfigClass def has_multiple_values? true end def _section :'domain-name' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\*\\-]+$", "maxlen"=>"128", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def member prop_get('member') end # Dotted domain name with optional wildcards def member=(val) prop_set('member', val) end end # class DomainName def domain_name if @create_children @subclasses['domain-name'] ||= DomainName.new(parent_instance: self, create_children: @create_children) else DomainName.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "cacheable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching of domains resolved by this mapping"}, "primary"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Primary DNS Name server IP address"}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Secondary DNS Name server IP address"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Turn on caching of domains resolved by this mapping def cacheable prop_get('cacheable') end # Turn on caching of domains resolved by this mapping def cacheable=(val) prop_set('cacheable', val) end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DomainServers def domain_servers if @create_children @subclasses['domain-servers'] ||= DomainServers.new(parent_instance: self, create_children: @create_children) else DomainServers.new(parent_instance: self) end end class Cache < ConfigClass def has_multiple_values? false end def _section :'cache' end class MaxTtl < ConfigClass def has_multiple_values? false end def _section :'max-ttl' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable max ttl for this DNS object"}, "time-to-live"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"86400", "help-string"=>"Time in seconds after which entry is cleared"}} # Enable max ttl for this DNS object def enabled prop_get('enabled') end # Enable max ttl for this DNS object def enabled=(val) prop_set('enabled', val) end # Time in seconds after which entry is cleared def time_to_live prop_get('time-to-live') end # Time in seconds after which entry is cleared def time_to_live=(val) prop_set('time-to-live', val) end end # class MaxTtl def max_ttl @subclasses['max-ttl'] ||= MaxTtl.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching for this DNS object"}, "cache-edns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Cache EDNS UDP response"}} # Turn on caching for this DNS object def enabled prop_get('enabled') end # Turn on caching for this DNS object def enabled=(val) prop_set('enabled', val) end # Cache EDNS UDP response def cache_edns prop_get('cache-edns') end # Cache EDNS UDP response def cache_edns=(val) prop_set('cache-edns', val) end end # class Cache def cache @subclasses['cache'] ||= Cache.new(parent_instance: self, create_children: @create_children) end class StaticEntries < XML::ConfigClass def has_multiple_values? true end def _section :'static-entries' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Resolved IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Resolved IP address def member prop_get('member') end # Resolved IP address def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "domain"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"Fully qualified domain name for specified IP address"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Fully qualified domain name for specified IP address def domain prop_get('domain') end # Fully qualified domain name for specified IP address def domain=(val) prop_set('domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticEntries def static_entries if @create_children @subclasses['static-entries'] ||= StaticEntries.new(parent_instance: self, create_children: @create_children) else StaticEntries.new(parent_instance: self) end end class TcpQueries < ConfigClass def has_multiple_values? false end def _section :'tcp-queries' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Turn on forwarding of TCP DNS queries"}, "max-pending-requests"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"64", "max"=>"256", "default"=>"64", "help-string"=>"Upper limit on number of concurrent TCP DNS requests"}} # Turn on forwarding of TCP DNS queries def enabled prop_get('enabled') end # Turn on forwarding of TCP DNS queries def enabled=(val) prop_set('enabled', val) end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests prop_get('max-pending-requests') end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests=(val) prop_set('max-pending-requests', val) end end # class TcpQueries def tcp_queries @subclasses['tcp-queries'] ||= TcpQueries.new(parent_instance: self, create_children: @create_children) end class UdpQueries < ConfigClass def has_multiple_values? false end def _section :'udp-queries' end class Retries < ConfigClass def has_multiple_values? false end def _section :'retries' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"2", "help-string"=>"Time in seconds for another request to be sent"}, "attempts"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"5", "help-string"=>"Maximum number of retries before trying next name server"}} # Time in seconds for another request to be sent def interval prop_get('interval') end # Time in seconds for another request to be sent def interval=(val) prop_set('interval', val) end # Maximum number of retries before trying next name server def attempts prop_get('attempts') end # Maximum number of retries before trying next name server def attempts=(val) prop_set('attempts', val) end end # class Retries def retries @subclasses['retries'] ||= Retries.new(parent_instance: self, create_children: @create_children) end @props={} end # class UdpQueries def udp_queries @subclasses['udp-queries'] ||= UdpQueries.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable or disable processing of DNS requests on interface(s) on this object"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled prop_get('enabled') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DnsProxy def dns_proxy if @create_children @subclasses['dns-proxy'] ||= DnsProxy.new(parent_instance: self, create_children: @create_children) else DnsProxy.new(parent_instance: self) end end class Dhcp < ConfigClass def has_multiple_values? false end def _section :'dhcp' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < ConfigClass def has_multiple_values? false end def _section :'server' end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end class Lease < XML::ConfigClass def has_multiple_values? true end def _section :'lease' end class Unlimited < ConfigClass def has_multiple_values? false end def _section :'unlimited' end @props={} end # class Unlimited def unlimited @subclasses['unlimited'] ||= Unlimited.new(parent_instance: self, create_children: @create_children) end @props={"timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"1000000", "default"=>"1440", "help-string"=>"lease(minute)"}} # lease(minute) def timeout prop_get('timeout') end # lease(minute) def timeout=(val) prop_set('timeout', val) end end # class Lease def lease if @create_children @subclasses['lease'] ||= Lease.new(parent_instance: self, create_children: @create_children) else Lease.new(parent_instance: self) end end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "name(../../../../../interface/vlan[dhcp-client])", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Dns < ConfigClass def has_multiple_values? false end def _section :'dns' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS primary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS secondary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # DNS primary server ip address def primary prop_get('primary') end # DNS primary server ip address def primary=(val) prop_set('primary', val) end # DNS secondary server ip address def secondary prop_get('secondary') end # DNS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Dns def dns @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) end class Wins < ConfigClass def has_multiple_values? false end def _section :'wins' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS primary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS secondary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # WINS primary server ip address def primary prop_get('primary') end # WINS primary server ip address def primary=(val) prop_set('primary', val) end # WINS secondary server ip address def secondary prop_get('secondary') end # WINS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Wins def wins @subclasses['wins'] ||= Wins.new(parent_instance: self, create_children: @create_children) end class Nis < ConfigClass def has_multiple_values? false end def _section :'nis' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NIS primary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NIS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NIS secondary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NIS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # NIS primary server ip address def primary prop_get('primary') end # NIS primary server ip address def primary=(val) prop_set('primary', val) end # NIS secondary server ip address def secondary prop_get('secondary') end # NIS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Nis def nis @subclasses['nis'] ||= Nis.new(parent_instance: self, create_children: @create_children) end class Ntp < ConfigClass def has_multiple_values? false end def _section :'ntp' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NTP primary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NTP server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NTP secondary server ip address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NTP server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # NTP primary server ip address def primary prop_get('primary') end # NTP primary server ip address def primary=(val) prop_set('primary', val) end # NTP secondary server ip address def secondary prop_get('secondary') end # NTP secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Ntp def ntp @subclasses['ntp'] ||= Ntp.new(parent_instance: self, create_children: @create_children) end class UserDefined < XML::ConfigClass def has_multiple_values? true end def _section :'user-defined' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "ipv4-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ascii < XML::ConfigClass def has_multiple_values? true end def _section :'ascii' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ascii def ascii if @create_children @subclasses['ascii'] ||= Ascii.new(parent_instance: self, create_children: @create_children) else Ascii.new(parent_instance: self) end end class Hex < XML::ConfigClass def has_multiple_values? true end def _section :'hex' end @props={"member"=> {"node-type"=>"element", "minlen"=>"1", "maxlen"=>"510", "type"=>"string", "regex"=>"^[0-9a-fA-F]+$"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hex def hex if @create_children @subclasses['hex'] ||= Hex.new(parent_instance: self, create_children: @create_children) else Hex.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "regex"=>"^([ a-zA-Z0-9_.-])+$", "help-string"=>"option name"}, "code"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"254", "help-string"=>"option code"}, "vendor-class-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^([ a-zA-Z0-9./_=:;?@-])+$"}, "inherited"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Inherited from DHCP server inheritance source"}} # option name def name prop_get('@name') end # option code def code prop_get('code') end # option code def code=(val) prop_set('code', val) end def vendor_class_identifier prop_get('vendor-class-identifier') end def vendor_class_identifier=(val) prop_set('vendor-class-identifier', val) end # Inherited from DHCP server inheritance source def inherited prop_get('inherited') end # Inherited from DHCP server inheritance source def inherited=(val) prop_set('inherited', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UserDefined def user_defined if @create_children @subclasses['user-defined'] ||= UserDefined.new(parent_instance: self, create_children: @create_children) else UserDefined.new(parent_instance: self) end end @props={"gateway"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"default gateway", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "subnet-mask"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "unicast-only"=>"yes", "optional"=>"yes", "help-string"=>"ip pool subnet mask", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "pop3-server"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"POP3 server", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"POP3 server ip address"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "smtp-server"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"SMTP server", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"SMTP server ip address"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "dns-suffix"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"domain name", "multi-types"=> {"string"=>{"maxlen"=>"63", "help-string"=>"SMTP server ip address"}, "enum"=>[{"value"=>"inherited"}]}}} # default gateway def gateway prop_get('gateway') end # default gateway def gateway=(val) prop_set('gateway', val) end # ip pool subnet mask def subnet_mask prop_get('subnet-mask') end # ip pool subnet mask def subnet_mask=(val) prop_set('subnet-mask', val) end # POP3 server def pop3_server prop_get('pop3-server') end # POP3 server def pop3_server=(val) prop_set('pop3-server', val) end # SMTP server def smtp_server prop_get('smtp-server') end # SMTP server def smtp_server=(val) prop_set('smtp-server', val) end # domain name def dns_suffix prop_get('dns-suffix') end # domain name def dns_suffix=(val) prop_set('dns-suffix', val) end end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class Reserved < XML::ConfigClass def has_multiple_values? true end def _section :'reserved' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "ipv4-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"ip"}, "mac"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Description of reserved entry, e.g. host name", "maxlen"=>"255"}} # ip def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def mac prop_get('mac') end # MAC address (format xx:xx:xx:xx:xx:xx) def mac=(val) prop_set('mac', val) end # Description of reserved entry, e.g. host name def description prop_get('description') end # Description of reserved entry, e.g. host name def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Reserved def reserved if @create_children @subclasses['reserved'] ||= Reserved.new(parent_instance: self, create_children: @create_children) else Reserved.new(parent_instance: self) end end @props={"mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"enabled", "help-string"=>"Enable dhcp server"}, {"value"=>"disabled", "help-string"=>"Disable dhcp server"}, {"value"=>"auto", "help-string"=> "Auto probe to avoid conflict with existing DHCP server"}]}, "probe-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Ping IP when allocating a new IP"}} def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end # Ping IP when allocating a new IP def probe_ip prop_get('probe-ip') end # Ping IP when allocating a new IP def probe_ip=(val) prop_set('probe-ip', val) end end # class Server def server @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) end class Relay < ConfigClass def has_multiple_values? false end def _section :'relay' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"relay server ip", "max-count"=>"8", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # relay server ip def member prop_get('member') end # relay server ip def member=(val) prop_set('member', val) end end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"relay server address"}, "interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Specify outgoing interface when using an IPv6 multicast address for your DHCPv6 server", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[ipv6/enabled='yes']/@name|#myentry(devices)/network/interface/ethernet/entry[layer3/ipv6/enabled='yes']/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[ipv6/enabled='yes']/@name|#network/interface/aggregate-ethernet/entry[layer3/ipv6/enabled='yes']/@name", "#network/interface/vlan/units/entry[ipv6/enabled='yes']/@name", "name(../../../../../../../../../interface/vlan[ipv6/enabled='yes'])"]}} # relay server address def name prop_get('@name') end # Specify outgoing interface when using an IPv6 multicast address for your DHCPv6 server def interface prop_get('interface') end # Specify outgoing interface when using an IPv6 multicast address for your DHCPv6 server def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class Relay def relay @subclasses['relay'] ||= Relay.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "regex"=>"^([ 0-9a-zA-Z./_-])+$", "help-string"=>"interface for dhcp", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer3/units/entry[not(dhcp-client) and not(../../untagged-sub-interface='yes') and not(decrypt-forward = 'yes')]/@name|#network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(dhcp-client) and not(../../untagged-sub-interface='yes') and not (decrypt-forward = 'yes')]/@name|#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry[not(dhcp-client)]/@name", "name(../../../interface/vlan[not(dhcp-client)])", "name(../../../interface/vlan[not(dhcp-client)])"]}} # interface for dhcp def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class Dhcp def dhcp @subclasses['dhcp'] ||= Dhcp.new(parent_instance: self, create_children: @create_children) end class SharedGateway < XML::ConfigClass def has_multiple_values? true end def _section :'shared-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Import < ConfigClass def has_multiple_values? false end def _section :'import' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "affects"=>"../../../../../zone", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end @props={"dns-proxy"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Dns proxy object to use for resolving fqdns", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/dns-proxy/entry/@name"]}} # Dns proxy object to use for resolving fqdns def dns_proxy prop_get('dns-proxy') end # Dns proxy object to use for resolving fqdns def dns_proxy=(val) prop_set('dns-proxy', val) end end # class Import def import @subclasses['import'] ||= Import.new(parent_instance: self, create_children: @create_children) end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Layer3 < XML::ConfigClass def has_multiple_values? true end def _section :'layer3' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Layer3 def layer3 if @create_children @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) else Layer3.new(parent_instance: self) end end class External < XML::ConfigClass def has_multiple_values? true end def _section :'external' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"vsys name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/vsys/entry/@name", "#myentry(devices)/network/shared-gateway/entry[@name!='$mysgname']/@name", "#myentry(devices)/network/shared-gateway/entry[@name!='$mysgname']/@name"]}} # vsys name def member prop_get('member') end # vsys name def member=(val) prop_set('member', val) end end # class External def external if @create_children @subclasses['external'] ||= External.new(parent_instance: self, create_children: @create_children) else External.new(parent_instance: self) end end @props={"zone-protection-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Zone protection profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/profiles/zone-protection-profile/entry/@name"]}, "enable-packet-buffer-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding scan logs", "autocomplete"=>"yes", "memberof"=>["##/shared/log-settings/profiles/entry/@name"]}} # Zone protection profile def zone_protection_profile prop_get('zone-protection-profile') end # Zone protection profile def zone_protection_profile=(val) prop_set('zone-protection-profile', val) end def enable_packet_buffer_protection prop_get('enable-packet-buffer-protection') end def enable_packet_buffer_protection=(val) prop_set('enable-packet-buffer-protection', val) end # Log setting for forwarding scan logs def log_setting prop_get('log-setting') end # Log setting for forwarding scan logs def log_setting=(val) prop_set('log-setting', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class UserAcl < ConfigClass def has_multiple_values? false end def _section :'user-acl' end class IncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeList def include_list if @create_children @subclasses['include-list'] ||= IncludeList.new(parent_instance: self, create_children: @create_children) else IncludeList.new(parent_instance: self) end end class ExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeList def exclude_list if @create_children @subclasses['exclude-list'] ||= ExcludeList.new(parent_instance: self, create_children: @create_children) else ExcludeList.new(parent_instance: self) end end @props={} end # class UserAcl def user_acl @subclasses['user-acl'] ||= UserAcl.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"15", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "dos-profile"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "help-string"=>"Denial-of-Service profile", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/dos/entry/@name", "#config/shared/profiles/dos/entry/@name"]}, "dos-log-setting"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding DoS logs", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Denial-of-Service profile def dos_profile prop_get('dos-profile') end # Denial-of-Service profile def dos_profile=(val) prop_set('dos-profile', val) end # Log setting for forwarding DoS logs def dos_log_setting prop_get('dos-log-setting') end # Log setting for forwarding DoS logs def dos_log_setting=(val) prop_set('dos-log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "ip-netmask"=>{"node-type"=>"element", "type"=>"ipspec"}, "ip-range"=>{"node-type"=>"element", "type"=>"iprangespec"}, "ip-wildcard"=>{"node-type"=>"element", "type"=>"ipdiscontmask"}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^[a-zA-Z0-9_]([a-zA-Z0-9._-])+[a-zA-Z0-9]$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def ip_wildcard prop_get('ip-wildcard') end def ip_wildcard=(val) prop_set('ip-wildcard', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class AddressGroup < XML::ConfigClass def has_multiple_values? true end def _section :'address-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Static < XML::ConfigClass def has_multiple_values? true end def _section :'static' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Static def static if @create_children @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) else Static.new(parent_instance: self) end end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"filter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2047", "help-string"=>"tag-based filter"}} # tag-based filter def filter prop_get('filter') end # tag-based filter def filter=(val) prop_set('filter', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressGroup def address_group if @create_children @subclasses['address-group'] ||= AddressGroup.new(parent_instance: self, create_children: @create_children) else AddressGroup.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"tcp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "halfclose-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session half-close timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "timewait-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session time-wait timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600"}} # tcp session timeout value (in second) def timeout prop_get('timeout') end # tcp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end # tcp session half-close timeout value (in second) def halfclose_timeout prop_get('halfclose-timeout') end # tcp session half-close timeout value (in second) def halfclose_timeout=(val) prop_set('halfclose-timeout', val) end # tcp session time-wait timeout value (in second) def timewait_timeout prop_get('timewait-timeout') end # tcp session time-wait timeout value (in second) def timewait_timeout=(val) prop_set('timewait-timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"udp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "default"=>"30"}} # udp session timeout value (in second) def timeout prop_get('timeout') end # udp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class ServiceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'service-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServiceGroup def service_group if @create_children @subclasses['service-group'] ||= ServiceGroup.new(parent_instance: self, create_children: @create_children) else ServiceGroup.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color19"}, {"value"=>"color20"}, {"value"=>"color21"}, {"value"=>"color22"}, {"value"=>"color23"}, {"value"=>"color24"}, {"value"=>"color25"}, {"value"=>"color26"}, {"value"=>"color27"}, {"value"=>"color28"}, {"value"=>"color29"}, {"value"=>"color30"}, {"value"=>"color31"}, {"value"=>"color32"}, {"value"=>"color33"}, {"value"=>"color34"}, {"value"=>"color35"}, {"value"=>"color36"}, {"value"=>"color37"}, {"value"=>"color38"}, {"value"=>"color39"}, {"value"=>"color40"}, {"value"=>"color41"}, {"value"=>"color42"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def color prop_get('color') end def color=(val) prop_set('color', val) end def comments prop_get('comments') end def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/snmptrap/entry[version]/@name", "#myentry(shared-gateway)/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/email/entry[server]/@name", "#myentry(shared-gateway)/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/syslog/entry[server]/@name", "#myentry(shared-gateway)/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#myentry(shared-gateway)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/http/entry[tag-registration='yes']/@name", "#myentry(shared-gateway)/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SMTP gateway to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$|^\\$([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SYSLOG server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(shared-gateway)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class Rulebase < ConfigClass def has_multiple_values? false end def _section :'rulebase' end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name", "#myentry(shared-gateway)/zone/entry[network/virtual-wire]/@name", "#myentry(shared-gateway)/zone/entry[network/external]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name", "#myentry(shared-gateway)/zone/entry[network/virtual-wire]/@name", "#myentry(shared-gateway)/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31", "disallow-keyword-any"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/imsi]/@name", "#myentry(shared-gateway)/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceTranslation < ConfigClass def has_multiple_values? false end def _section :'source-translation' end class DynamicIpAndPort < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip-and-port' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.nat.rules.interface-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIpAndPort def dynamic_ip_and_port @subclasses['dynamic-ip-and-port'] ||= DynamicIpAndPort.new(parent_instance: self, create_children: @create_children) end class DynamicIp < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class Fallback < ConfigClass def has_multiple_values? false end def _section :'fallback' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Fallback def fallback @subclasses['fallback'] ||= Fallback.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIp def dynamic_ip @subclasses['dynamic-ip'] ||= DynamicIp.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "bi-directional"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"no", "help-string"=> "allow reverse translation from translated address to original address", "enum"=> [{"value"=>"yes", "help-string"=>"Bi-directional rule"}, {"value"=>"no", "help-string"=>"Uni-directional rule"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end # allow reverse translation from translated address to original address def bi_directional prop_get('bi-directional') end # allow reverse translation from translated address to original address def bi_directional=(val) prop_set('bi-directional', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class SourceTranslation def source_translation @subclasses['source-translation'] ||= SourceTranslation.new(parent_instance: self, create_children: @create_children) end class DestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'destination-translation' end class DnsRewrite < ConfigClass def has_multiple_values? false end def _section :'dns-rewrite' end @props={"direction"=> {"node-type"=>"element", "type"=>"enum", "default"=>"reverse", "help-string"=>"Select direction to apply DNS rewrite", "enum"=> [{"value"=>"reverse", "help-string"=>"Reverse translation"}, {"value"=>"forward", "help-string"=>"Forward translation"}]}} # Select direction to apply DNS rewrite def direction prop_get('direction') end # Select direction to apply DNS rewrite def direction=(val) prop_set('direction', val) end end # class DnsRewrite def dns_rewrite @subclasses['dns-rewrite'] ||= DnsRewrite.new(parent_instance: self, create_children: @create_children) end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end end # class DestinationTranslation def destination_translation @subclasses['destination-translation'] ||= DestinationTranslation.new(parent_instance: self, create_children: @create_children) end class DynamicDestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'dynamic-destination-translation' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}, "distribution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"round-robin", "help-string"=>"Distribution algorithm for destination address pool", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"source-ip-hash", "help-string"=>"Source IP Hash"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"least-sessions", "help-string"=>"Least Sessions"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end # Distribution algorithm for destination address pool def distribution prop_get('distribution') end # Distribution algorithm for destination address pool def distribution=(val) prop_set('distribution', val) end end # class DynamicDestinationTranslation def dynamic_destination_translation @subclasses['dynamic-destination-translation'] ||= DynamicDestinationTranslation.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "service"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "#config/shared/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name", "string('any')"]}, "nat-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"type of nat", "enum"=> [{"value"=>"ipv4", "help-string"=>"ipv4 nat"}, {"value"=>"nat64", "help-string"=>"translator between ipv6 and ipv4"}, {"value"=>"nptv6", "help-string"=>"network prefix translator for ipv6"}]}, "to-interface"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"any", "type"=>"multiple", "help-string"=>"Egress interface from route lookup", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/to-interface", "#dg-hier/post-rulebase/*/rules/entry/to-interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any interface"}]}}, "active-active-device-binding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"primary", "help-string"=>"Rule is bound to Active-Primary device"}, {"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def service prop_get('service') end def service=(val) prop_set('service', val) end # type of nat def nat_type prop_get('nat-type') end # type of nat def nat_type=(val) prop_set('nat-type', val) end # Egress interface from route lookup def to_interface prop_get('to-interface') end # Egress interface from route lookup def to_interface=(val) prop_set('to-interface', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class Pbf < ConfigClass def has_multiple_values? false end def _section :'pbf' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name", "#myentry(shared-gateway)/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/from/interface/member", "#dg-hier/post-rulebase/*/rules/entry/from/interface/member", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/imsi]/@name", "#myentry(shared-gateway)/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/local-user-database/user/entry/@name", "#myentry(shared-gateway)/local-user-database/user-group/entry/@name", "#myentry(shared-gateway)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[not(cachable='no')]/@name", "#config/shared/content-preview/application/entry[not(cachable='no')]/@name", "#dg-hier/pre-rulebase/application-override/rules/entry/application", "#dg-hier/post-rulebase/application-override/rules/entry/application"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Forward < ConfigClass def has_multiple_values? false end def _section :'forward' end class Nexthop < ConfigClass def has_multiple_values? false end def _section :'nexthop' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(shared-gateway)/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name", "#myentry(shared-gateway)/address/entry[fqdn]/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN name configuration def fqdn prop_get('fqdn') end # nexthop address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class Nexthop def nexthop @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Monitoring profile associated with this rule", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#myentry(devices)/network/profiles/monitor-profile/entry/@name"]}, "disable-if-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable this rule if nexthop/monitor ip is unreachable"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Monitor IP address"}} # Monitoring profile associated with this rule def profile prop_get('profile') end # Monitoring profile associated with this rule def profile=(val) prop_set('profile', val) end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable prop_get('disable-if-unreachable') end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable=(val) prop_set('disable-if-unreachable', val) end # Monitor IP address def ip_address prop_get('ip-address') end # Monitor IP address def ip_address=(val) prop_set('ip-address', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end @props={"egress-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/egress-interface", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/egress-interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} # Interface to route packet to def egress_interface prop_get('egress-interface') end # Interface to route packet to def egress_interface=(val) prop_set('egress-interface', val) end end # class Forward def forward @subclasses['forward'] ||= Forward.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end class NoPbf < ConfigClass def has_multiple_values? false end def _section :'no-pbf' end @props={} end # class NoPbf def no_pbf @subclasses['no-pbf'] ||= NoPbf.new(parent_instance: self, create_children: @create_children) end @props={"forward-to-vsys"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Virtual system/Shared gateway to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward-to-vsys", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward-to-vsys", "#myentry(devices)/vsys/entry/@name", "#myentry(devices)/network/shared-gateway/entry/@name"]}} # Virtual system/Shared gateway to route packet to def forward_to_vsys prop_get('forward-to-vsys') end # Virtual system/Shared gateway to route packet to def forward_to_vsys=(val) prop_set('forward-to-vsys', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end class EnforceSymmetricReturn < ConfigClass def has_multiple_values? false end def _section :'enforce-symmetric-return' end class NexthopAddressList < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop-address-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address"}} # IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NexthopAddressList def nexthop_address_list if @create_children @subclasses['nexthop-address-list'] ||= NexthopAddressList.new(parent_instance: self, create_children: @create_children) else NexthopAddressList.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable symmetric return"}} # Enable symmetric return def enabled prop_get('enabled') end # Enable symmetric return def enabled=(val) prop_set('enabled', val) end end # class EnforceSymmetricReturn def enforce_symmetric_return @subclasses['enforce-symmetric-return'] ||= EnforceSymmetricReturn.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/schedule/entry/@name", "#myentry(shared-gateway)/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}, "active-active-device-binding"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.pbf.rules.active-active-device-binding-disable=True", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Pbf def pbf @subclasses['pbf'] ||= Pbf.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/imsi]/@name", "#myentry(shared-gateway)/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/local-user-database/user/entry/@name", "#myentry(shared-gateway)/local-user-database/user-group/entry/@name", "#myentry(shared-gateway)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#myentry(shared-gateway)/application/entry/@name", "#myentry(shared-gateway)/application-group/entry/@name", "#myentry(shared-gateway)/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"traffic-distribution-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan traffic distribution associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-traffic-distribution/entry/@name", "#config/shared/profiles/sdwan-traffic-distribution/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-traffic-distribution/entry/@name"]}, "app-failover-for-nat-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"keep-existing-link", "help-string"=>"For NAT sessions, specify whether to move to a better path", "enum"=> [{"value"=>"keep-existing-link", "help-string"=>"Keep session on existing link"}, {"value"=>"failover-to-better-path", "help-string"=>"Allow session failover to better path"}]}} # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile prop_get('traffic-distribution-profile') end # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile=(val) prop_set('traffic-distribution-profile', val) end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions prop_get('app-failover-for-nat-sessions') end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions=(val) prop_set('app-failover-for-nat-sessions', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}, "path-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan path quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-path-quality/entry/@name", "#config/shared/profiles/sdwan-path-quality/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-path-quality/entry/@name"]}, "saas-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan saas quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-saas-quality/entry/@name", "#config/shared/profiles/sdwan-saas-quality/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-saas-quality/entry/@name"]}, "error-correction-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan error correction profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-error-correction/entry/@name", "#config/shared/profiles/sdwan-error-correction/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-error-correction/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # attach sdwan path quality profile associated with this rule def path_quality_profile prop_get('path-quality-profile') end # attach sdwan path quality profile associated with this rule def path_quality_profile=(val) prop_set('path-quality-profile', val) end # attach sdwan saas quality profile associated with this rule def saas_quality_profile prop_get('saas-quality-profile') end # attach sdwan saas quality profile associated with this rule def saas_quality_profile=(val) prop_set('saas-quality-profile', val) end # attach sdwan error correction profile associated with this rule def error_correction_profile prop_get('error-correction-profile') end # attach sdwan error correction profile associated with this rule def error_correction_profile=(val) prop_set('error-correction-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={} end # class Rulebase def rulebase @subclasses['rulebase'] ||= Rulebase.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "sub-type"=>"object-name", "help-string"=>"shared-gateway name"}, "display-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # shared-gateway name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def display_name prop_get('display-name') end # alphanumeric string [ 0-9a-zA-Z._-] def display_name=(val) prop_set('display-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SharedGateway def shared_gateway if @create_children @subclasses['shared-gateway'] ||= SharedGateway.new(parent_instance: self, create_children: @create_children) else SharedGateway.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "transmit-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "optional"=>"yes", "default"=>"30"}, "transmit-delay"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "default"=>"2"}, "hold-time-multiple"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"100", "optional"=>"yes", "default"=>"4"}, "notification-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "optional"=>"yes", "default"=>"5"}, "tx-credit-max"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"10", "optional"=>"yes", "default"=>"5"}, "tx-fast-init"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"8", "optional"=>"yes", "default"=>"4"}, "reinit-delay"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"10", "optional"=>"yes", "default"=>"2"}, "msg-fast-tx"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "optional"=>"yes", "default"=>"1"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def transmit_interval prop_get('transmit-interval') end def transmit_interval=(val) prop_set('transmit-interval', val) end def transmit_delay prop_get('transmit-delay') end def transmit_delay=(val) prop_set('transmit-delay', val) end def hold_time_multiple prop_get('hold-time-multiple') end def hold_time_multiple=(val) prop_set('hold-time-multiple', val) end def notification_interval prop_get('notification-interval') end def notification_interval=(val) prop_set('notification-interval', val) end def tx_credit_max prop_get('tx-credit-max') end def tx_credit_max=(val) prop_set('tx-credit-max', val) end def tx_fast_init prop_get('tx-fast-init') end def tx_fast_init=(val) prop_set('tx-fast-init', val) end def reinit_delay prop_get('reinit-delay') end def reinit_delay=(val) prop_set('reinit-delay', val) end def msg_fast_tx prop_get('msg-fast-tx') end def msg_fast_tx=(val) prop_set('msg-fast-tx', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end class UnderlayNet < ConfigClass def has_multiple_values? false end def _section :'underlay-net' end class IpMapping < XML::ConfigClass def has_multiple_values? true end def _section :'ip-mapping' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "overlay-ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "underlay-ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or address object def overlay_ip prop_get('overlay-ip') end # IP address or address object def overlay_ip=(val) prop_set('overlay-ip', val) end # IP address or address object def underlay_ip prop_get('underlay-ip') end # IP address or address object def underlay_ip=(val) prop_set('underlay-ip', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpMapping def ip_mapping if @create_children @subclasses['ip-mapping'] ||= IpMapping.new(parent_instance: self, create_children: @create_children) else IpMapping.new(parent_instance: self) end end @props={} end # class UnderlayNet def underlay_net @subclasses['underlay-net'] ||= UnderlayNet.new(parent_instance: self, create_children: @create_children) end @props={} end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end @props={"reserve-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"reserve translated IP for specified time"}, "reserve-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "help-string"=>"reserve time value in seconds"}} # reserve translated IP for specified time def reserve_ip prop_get('reserve-ip') end # reserve translated IP for specified time def reserve_ip=(val) prop_set('reserve-ip', val) end # reserve time value in seconds def reserve_time prop_get('reserve-time') end # reserve time value in seconds def reserve_time=(val) prop_set('reserve-time', val) end end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end @props={"allow-forward-decrypted-content"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow forwarding of decrypted content"}, "url-wait__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"single-vsys-mode", "help-string"=>"set if wait for url category if not in cache"}, "url-proxy__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=> "set if proxy for ssl sessions if ip's url category is blocked"}, "notify-user__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=>"set if user notification should be enabled"}, "answer-timeout__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"86400", "prune-on"=>"single-vsys-mode", "help-string"=>"set user reply timeout value in seconds"}, "crl__6"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=>"set whether to use CRL to check certificate status"}, "ocsp__7"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=>"set whether to use OCSP to check certificate status"}, "block-unknown-cert__8"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "prune-on"=>"single-vsys-mode", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert__9"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "cert-status-timeout__10"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "prune-on"=>"single-vsys-mode", "help-string"=>"set cert status query timeout value in seconds"}} # Allow forwarding of decrypted content def allow_forward_decrypted_content prop_get('allow-forward-decrypted-content') end # Allow forwarding of decrypted content def allow_forward_decrypted_content=(val) prop_set('allow-forward-decrypted-content', val) end # set if wait for url category if not in cache def url_wait__2 prop_get('url-wait__2') end # set if wait for url category if not in cache def url_wait__2=(val) prop_set('url-wait__2', val) end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy__3 prop_get('url-proxy__3') end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy__3=(val) prop_set('url-proxy__3', val) end # set if user notification should be enabled def notify_user__4 prop_get('notify-user__4') end # set if user notification should be enabled def notify_user__4=(val) prop_set('notify-user__4', val) end # set user reply timeout value in seconds def answer_timeout__5 prop_get('answer-timeout__5') end # set user reply timeout value in seconds def answer_timeout__5=(val) prop_set('answer-timeout__5', val) end # set whether to use CRL to check certificate status def crl__6 prop_get('crl__6') end # set whether to use CRL to check certificate status def crl__6=(val) prop_set('crl__6', val) end # set whether to use OCSP to check certificate status def ocsp__7 prop_get('ocsp__7') end # set whether to use OCSP to check certificate status def ocsp__7=(val) prop_set('ocsp__7', val) end # whether to block a session if cert. status is unknown def block_unknown_cert__8 prop_get('block-unknown-cert__8') end # whether to block a session if cert. status is unknown def block_unknown_cert__8=(val) prop_set('block-unknown-cert__8', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert__9 prop_get('block-timeout-cert__9') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert__9=(val) prop_set('block-timeout-cert__9', val) end # set cert status query timeout value in seconds def cert_status_timeout__10 prop_get('cert-status-timeout__10') end # set cert status query timeout value in seconds def cert_status_timeout__10=(val) prop_set('cert-status-timeout__10', val) end end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end @props={} end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class Import < ConfigClass def has_multiple_values? false end def _section :'import' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "affects"=>"../../../../../zone", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/log-card/units/entry/@name", "#myentry(devices)/deviceconfig/log-fwd-card/interface/entry/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[tap]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class Vlan < XML::ConfigClass def has_multiple_values? true end def _section :'vlan' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vlan def vlan if @create_children @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) else Vlan.new(parent_instance: self) end end class VirtualRouter < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-router' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VirtualRouter def virtual_router if @create_children @subclasses['virtual-router'] ||= VirtualRouter.new(parent_instance: self, create_children: @create_children) else VirtualRouter.new(parent_instance: self) end end class LogicalRouter < XML::ConfigClass def has_multiple_values? true end def _section :'logical-router' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogicalRouter def logical_router if @create_children @subclasses['logical-router'] ||= LogicalRouter.new(parent_instance: self, create_children: @create_children) else LogicalRouter.new(parent_instance: self) end end @props={} end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Resource < ConfigClass def has_multiple_values? false end def _section :'resource' end @props={"max-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"80000040", "help-string"=>"Maximum number of sessions allowed for this vsys"}, "max-site-to-site-vpn-tunnels"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10000", "platform-max"=>"cfg.general.max-ssl-tunnel", "help-string"=> "Maximum number of site to site vpn tunnels allowed for this vsys"}, "max-concurrent-ssl-vpn-tunnels"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "platform-max"=>"cfg.general.max-ssl-tunnel", "help-string"=> "Maximum number of concurrent ssl vpn tunnels allowed for this vsys"}, "max-security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65000", "platform-max"=>"cfg.general.max-policy-rule", "help-string"=>"Maximum number of security rules allowed for this vsys"}, "max-nat-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"16000", "platform-max"=>"cfg.general.max-nat-policy-rule", "help-string"=>"Maximum number of NAT rules allowed for this vsys"}, "max-ssl-decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"5000", "platform-max"=>"cfg.general.max-ssl-policy-rule", "help-string"=> "Maximum number of ssl decryption rules allowed for this vsys"}, "max-qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"8000", "platform-max"=>"cfg.general.max-qos-policy-rule", "help-string"=>"Maximum number of QoS rules allowed for this vsys"}, "max-application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4000", "platform-max"=>"cfg.general.max-oride-policy-rule", "help-string"=> "Maximum number of application override rules allowed for this vsys"}, "max-pbf-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"2000", "platform-max"=>"cfg.general.max-pbf-policy-rule", "help-string"=> "Maximum number of policy based forwarding rules allowed for this vsys"}, "max-auth-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"8000", "platform-max"=>"cfg.general.max-auth-policy-rule", "help-string"=> "Maximum number of authentication rules allowed for this vsys"}, "max-dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"2000", "platform-max"=>"cfg.general.max-dos-policy-rule", "help-string"=>"Maximum number of DoS rules allowed for this vsys"}, "max-sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"2000", "platform-max"=>"cfg.general.max-sdwan-policy-rule", "help-string"=>"Maximum number of sdwan rules allowed for this vsys"}} # Maximum number of sessions allowed for this vsys def max_sessions prop_get('max-sessions') end # Maximum number of sessions allowed for this vsys def max_sessions=(val) prop_set('max-sessions', val) end # Maximum number of site to site vpn tunnels allowed for this vsys def max_site_to_site_vpn_tunnels prop_get('max-site-to-site-vpn-tunnels') end # Maximum number of site to site vpn tunnels allowed for this vsys def max_site_to_site_vpn_tunnels=(val) prop_set('max-site-to-site-vpn-tunnels', val) end # Maximum number of concurrent ssl vpn tunnels allowed for this vsys def max_concurrent_ssl_vpn_tunnels prop_get('max-concurrent-ssl-vpn-tunnels') end # Maximum number of concurrent ssl vpn tunnels allowed for this vsys def max_concurrent_ssl_vpn_tunnels=(val) prop_set('max-concurrent-ssl-vpn-tunnels', val) end # Maximum number of security rules allowed for this vsys def max_security_rules prop_get('max-security-rules') end # Maximum number of security rules allowed for this vsys def max_security_rules=(val) prop_set('max-security-rules', val) end # Maximum number of NAT rules allowed for this vsys def max_nat_rules prop_get('max-nat-rules') end # Maximum number of NAT rules allowed for this vsys def max_nat_rules=(val) prop_set('max-nat-rules', val) end # Maximum number of ssl decryption rules allowed for this vsys def max_ssl_decryption_rules prop_get('max-ssl-decryption-rules') end # Maximum number of ssl decryption rules allowed for this vsys def max_ssl_decryption_rules=(val) prop_set('max-ssl-decryption-rules', val) end # Maximum number of QoS rules allowed for this vsys def max_qos_rules prop_get('max-qos-rules') end # Maximum number of QoS rules allowed for this vsys def max_qos_rules=(val) prop_set('max-qos-rules', val) end # Maximum number of application override rules allowed for this vsys def max_application_override_rules prop_get('max-application-override-rules') end # Maximum number of application override rules allowed for this vsys def max_application_override_rules=(val) prop_set('max-application-override-rules', val) end # Maximum number of policy based forwarding rules allowed for this vsys def max_pbf_rules prop_get('max-pbf-rules') end # Maximum number of policy based forwarding rules allowed for this vsys def max_pbf_rules=(val) prop_set('max-pbf-rules', val) end # Maximum number of authentication rules allowed for this vsys def max_auth_rules prop_get('max-auth-rules') end # Maximum number of authentication rules allowed for this vsys def max_auth_rules=(val) prop_set('max-auth-rules', val) end # Maximum number of DoS rules allowed for this vsys def max_dos_rules prop_get('max-dos-rules') end # Maximum number of DoS rules allowed for this vsys def max_dos_rules=(val) prop_set('max-dos-rules', val) end # Maximum number of sdwan rules allowed for this vsys def max_sdwan_rules prop_get('max-sdwan-rules') end # Maximum number of sdwan rules allowed for this vsys def max_sdwan_rules=(val) prop_set('max-sdwan-rules', val) end end # class Resource def resource @subclasses['resource'] ||= Resource.new(parent_instance: self, create_children: @create_children) end class VisibleVsys < XML::ConfigClass def has_multiple_values? true end def _section :'visible-vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#vsys/entry[(@name!='$myvsysname')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VisibleVsys def visible_vsys if @create_children @subclasses['visible-vsys'] ||= VisibleVsys.new(parent_instance: self, create_children: @create_children) else VisibleVsys.new(parent_instance: self) end end @props={"dns-proxy"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Dns proxy object to use for resolving fqdns", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/dns-proxy/entry/@name", "#myentry(vsys)/dns-proxy/entry/@name"]}} # Dns proxy object to use for resolving fqdns def dns_proxy prop_get('dns-proxy') end # Dns proxy object to use for resolving fqdns def dns_proxy=(val) prop_set('dns-proxy', val) end end # class Import def import @subclasses['import'] ||= Import.new(parent_instance: self, create_children: @create_children) end class Route < ConfigClass def has_multiple_values? false end def _section :'route' end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "complete-handler"=>"pan-vsys-ip-completer", "autocomplete"=>"yes"}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "complete-handler"=>"pan-vsys-ip-completer", "autocomplete"=>"yes"}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"Service name", "autocomplete"=>"yes", "memberof"=> ["string('radius')", "string('ldap')", "string('kerberos')", "string('tacplus')", "string('syslog')", "string('email')", "string('http')", "string('snmp')", "string('uid-agent')", "string('vmmonitor')", "string('mfa')", "string('netflow')", "string('ddns')"]}} # Service name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end @props={} end # class Route def route @subclasses['route'] ||= Route.new(parent_instance: self, create_children: @create_children) end class AuthenticationProfile < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SingleSignOn < ConfigClass def has_multiple_values? false end def _section :'single-sign-on' end @props={"realm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Kerberos realm to be used for authentication"}, "service-principal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^([:/a-zA-Z0-9._-])+$", "help-string"=>"Kerberos service principal"}, "kerberos-keytab"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"8192", "encrypt"=>"yes", "help-string"=>"Kerberos keytab"}} # Kerberos realm to be used for authentication def realm prop_get('realm') end # Kerberos realm to be used for authentication def realm=(val) prop_set('realm', val) end # Kerberos service principal def service_principal prop_get('service-principal') end # Kerberos service principal def service_principal=(val) prop_set('service-principal', val) end # Kerberos keytab def kerberos_keytab prop_get('kerberos-keytab') end # Kerberos keytab def kerberos_keytab=(val) prop_set('kerberos-keytab', val) end end # class SingleSignOn def single_sign_on @subclasses['single-sign-on'] ||= SingleSignOn.new(parent_instance: self, create_children: @create_children) end class Lockout < ConfigClass def has_multiple_values? false end def _section :'lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"0", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class Lockout def lockout @subclasses['lockout'] ||= Lockout.new(parent_instance: self, create_children: @create_children) end class AllowList < XML::ConfigClass def has_multiple_values? true end def _section :'allow-list' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name"], "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"1023"}, "enum"=>[{"value"=>"all", "help-string"=>"all user and user groups"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AllowList def allow_list if @create_children @subclasses['allow-list'] ||= AllowList.new(parent_instance: self, create_children: @create_children) else AllowList.new(parent_instance: self) end end class Method < XML::ConfigClass def has_multiple_values? true end def _section :'method' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class LocalDatabase < ConfigClass def has_multiple_values? false end def _section :'local-database' end @props={} end # class LocalDatabase def local_database @subclasses['local-database'] ||= LocalDatabase.new(parent_instance: self, create_children: @create_children) end class Radius < ConfigClass def has_multiple_values? false end def _section :'radius' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"RADIUS server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/radius/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/radius/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from RADIUS"}} # RADIUS server profile object def server_profile prop_get('server-profile') end # RADIUS server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from RADIUS def checkgroup prop_get('checkgroup') end # Retrieve user group from RADIUS def checkgroup=(val) prop_set('checkgroup', val) end end # class Radius def radius @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) end class Ldap < ConfigClass def has_multiple_values? false end def _section :'ldap' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/ldap/entry/@name"]}, "login-attribute"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "Default is samAccountName for Active Directory, uid for other directory servers"}, "passwd-exp-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "optional"=>"yes", "help-string"=>"Avail for Active Directory, eDir", "default"=>"7"}} # LDAP server profile object def server_profile prop_get('server-profile') end # LDAP server profile object def server_profile=(val) prop_set('server-profile', val) end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute prop_get('login-attribute') end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute=(val) prop_set('login-attribute', val) end # Avail for Active Directory, eDir def passwd_exp_days prop_get('passwd-exp-days') end # Avail for Active Directory, eDir def passwd_exp_days=(val) prop_set('passwd-exp-days', val) end end # class Ldap def ldap @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) end class Kerberos__5 < ConfigClass def has_multiple_values? false end def _section :'kerberos__5' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/kerberos/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/kerberos/entry/@name"]}, "realm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Realm name to be used for authentication"}} # Kerberos server profile object def server_profile prop_get('server-profile') end # Kerberos server profile object def server_profile=(val) prop_set('server-profile', val) end # Realm name to be used for authentication def realm prop_get('realm') end # Realm name to be used for authentication def realm=(val) prop_set('realm', val) end end # class Kerberos__5 def kerberos__5 @subclasses['kerberos__5'] ||= Kerberos__5.new(parent_instance: self, create_children: @create_children) end class Tacplus < ConfigClass def has_multiple_values? false end def _section :'tacplus' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"TACACS+ server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/tacplus/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/tacplus/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from TACACS+"}} # TACACS+ server profile object def server_profile prop_get('server-profile') end # TACACS+ server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from TACACS+ def checkgroup prop_get('checkgroup') end # Retrieve user group from TACACS+ def checkgroup=(val) prop_set('checkgroup', val) end end # class Tacplus def tacplus @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) end class SamlIdp < ConfigClass def has_multiple_values? false end def _section :'saml-idp' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"IdP server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/saml-idp/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/saml-idp/entry/@name"]}, "enable-single-logout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable single logout"}, "request-signing-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "complete-handler"=>"check-cert-fields-completer", "help-string"=>"Signing certificate for SAML requests", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry/@name", "#myentry(vsys)/certificate/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Certificate profile for IDP and SP", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "attribute-name-username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response", "uiHint-fieldLabel"=>"Username Attribute"}, "attribute-name-usergroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup", "uiHint-fieldLabel"=>"User Group Attribute"}, "attribute-name-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role", "uiHint-fieldLabel"=>"Admin Role Attribute"}, "attribute-name-access-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain", "uiHint-fieldLabel"=>"Access Domain Attribute"}} # IdP server profile object def server_profile prop_get('server-profile') end # IdP server profile object def server_profile=(val) prop_set('server-profile', val) end # Enable single logout def enable_single_logout prop_get('enable-single-logout') end # Enable single logout def enable_single_logout=(val) prop_set('enable-single-logout', val) end # Signing certificate for SAML requests def request_signing_certificate prop_get('request-signing-certificate') end # Signing certificate for SAML requests def request_signing_certificate=(val) prop_set('request-signing-certificate', val) end # Certificate profile for IDP and SP def certificate_profile prop_get('certificate-profile') end # Certificate profile for IDP and SP def certificate_profile=(val) prop_set('certificate-profile', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username prop_get('attribute-name-username') end # Attribute name for username to be extracted from SAML response def attribute_name_username=(val) prop_set('attribute-name-username', val) end # usergroup def attribute_name_usergroup prop_get('attribute-name-usergroup') end # usergroup def attribute_name_usergroup=(val) prop_set('attribute-name-usergroup', val) end # admin-role def attribute_name_admin_role prop_get('attribute-name-admin-role') end # admin-role def attribute_name_admin_role=(val) prop_set('attribute-name-admin-role', val) end # access-domain def attribute_name_access_domain prop_get('attribute-name-access-domain') end # access-domain def attribute_name_access_domain=(val) prop_set('attribute-name-access-domain', val) end end # class SamlIdp def saml_idp @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Method def method if @create_children @subclasses['method'] ||= Method.new(parent_instance: self, create_children: @create_children) else Method.new(parent_instance: self) end end class MultiFactorAuth < ConfigClass def has_multiple_values? false end def _section :'multi-factor-auth' end class Factors < XML::ConfigClass def has_multiple_values? true end def _section :'factors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "max-count"=>"3", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/mfa-server-profile/entry/@name", "#myentry(vsys)/server-profile/mfa-server-profile/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Factors def factors if @create_children @subclasses['factors'] ||= Factors.new(parent_instance: self, create_children: @create_children) else Factors.new(parent_instance: self) end end @props={"mfa-enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable Additional Authentication Factors"}} # Enable Additional Authentication Factors def mfa_enable prop_get('mfa-enable') end # Enable Additional Authentication Factors def mfa_enable=(val) prop_set('mfa-enable', val) end end # class MultiFactorAuth def multi_factor_auth @subclasses['multi-factor-auth'] ||= MultiFactorAuth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Group name"}, "username-modifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"%USERINPUT%", "help-string"=>"Username modifier(Not for SAML) to handle user domain", "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"127"}, "enum"=> [{"value"=>"%USERINPUT%"}, {"value"=>"%USERINPUT%@%USERDOMAIN%"}, {"value"=>"%USERDOMAIN%\\%USERINPUT%"}]}}, "user-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "regex"=> "^[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|\\.]{1}[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|]{0,62}$", "help-string"=>"Domain name(Not for SAML) to be used for authentication"}} # Group name def name prop_get('@name') end # Username modifier(Not for SAML) to handle user domain def username_modifier prop_get('username-modifier') end # Username modifier(Not for SAML) to handle user domain def username_modifier=(val) prop_set('username-modifier', val) end # Domain name(Not for SAML) to be used for authentication def user_domain prop_get('user-domain') end # Domain name(Not for SAML) to be used for authentication def user_domain=(val) prop_set('user-domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationProfile def authentication_profile if @create_children @subclasses['authentication-profile'] ||= AuthenticationProfile.new(parent_instance: self, create_children: @create_children) else AuthenticationProfile.new(parent_instance: self) end end class AuthenticationSequence < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-sequence' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AuthenticationProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name", "#myentry(vsys)/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationProfiles def authentication_profiles if @create_children @subclasses['authentication-profiles'] ||= AuthenticationProfiles.new(parent_instance: self, create_children: @create_children) else AuthenticationProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Authentication sequence name"}, "use-domain-find-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Attempt to use domain to determine authentication profile"}} # Authentication sequence name def name prop_get('@name') end # Attempt to use domain to determine authentication profile def use_domain_find_profile prop_get('use-domain-find-profile') end # Attempt to use domain to determine authentication profile def use_domain_find_profile=(val) prop_set('use-domain-find-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationSequence def authentication_sequence if @create_children @subclasses['authentication-sequence'] ||= AuthenticationSequence.new(parent_instance: self, create_children: @create_children) else AuthenticationSequence.new(parent_instance: self) end end class CertificateProfile < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsernameField < XML::ConfigClass def has_multiple_values? true end def _section :'username-field' end @props={"subject"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject", "enum"=>[{"value"=>"common-name"}]}, "subject-alt"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject alternative name", "enum"=>[{"value"=>"email"}, {"value"=>"principal-name"}]}} # get user name from subject def subject prop_get('subject') end # get user name from subject def subject=(val) prop_set('subject', val) end # get user name from subject alternative name def subject_alt prop_get('subject-alt') end # get user name from subject alternative name def subject_alt=(val) prop_set('subject-alt', val) end end # class UsernameField def username_field if @create_children @subclasses['username-field'] ||= UsernameField.new(parent_instance: self, create_children: @create_children) else UsernameField.new(parent_instance: self) end end class CA < XML::ConfigClass def has_multiple_values? true end def _section :'CA' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"CA file for client certificate", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate/entry[ca='yes']/@name", "#myentry(vsys)/certificate/entry[ca='yes']/@name"]}, "default-ocsp-url"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"default URL for ocsp verification"}, "ocsp-verify-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "help-string"=>"Certificate to verify signature in OCSP response", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate/entry/@name", "#myentry(vsys)/certificate/entry/@name"]}, "template-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"Certificate Template Name / OID for the certificate"}} # CA file for client certificate def name prop_get('@name') end # default URL for ocsp verification def default_ocsp_url prop_get('default-ocsp-url') end # default URL for ocsp verification def default_ocsp_url=(val) prop_set('default-ocsp-url', val) end # Certificate to verify signature in OCSP response def ocsp_verify_cert prop_get('ocsp-verify-cert') end # Certificate to verify signature in OCSP response def ocsp_verify_cert=(val) prop_set('ocsp-verify-cert', val) end # Certificate Template Name / OID for the certificate def template_name prop_get('template-name') end # Certificate Template Name / OID for the certificate def template_name=(val) prop_set('template-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CA def CA if @create_children @subclasses['CA'] ||= CA.new(parent_instance: self, create_children: @create_children) else CA.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Profile name"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "uiHint-fieldLabel"=>"User Domain"}, "use-crl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ocsp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "ocsp-exclude-nonce"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to exclude nonce extension for OCSP requests"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "block-unauthenticated-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block session if the certificate was not issued to the authenticating device"}, "block-expired-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is expired"}} # Profile name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def domain prop_get('domain') end # alphanumeric string [ 0-9a-zA-Z._-] def domain=(val) prop_set('domain', val) end def use_crl prop_get('use-crl') end def use_crl=(val) prop_set('use-crl', val) end def use_ocsp prop_get('use-ocsp') end def use_ocsp=(val) prop_set('use-ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce prop_get('ocsp-exclude-nonce') end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce=(val) prop_set('ocsp-exclude-nonce', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert prop_get('block-unauthenticated-cert') end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert=(val) prop_set('block-unauthenticated-cert', val) end # whether to block a session if cert. status is expired def block_expired_cert prop_get('block-expired-cert') end # whether to block a session if cert. status is expired def block_expired_cert=(val) prop_set('block-expired-cert', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateProfile def certificate_profile if @create_children @subclasses['certificate-profile'] ||= CertificateProfile.new(parent_instance: self, create_children: @create_children) else CertificateProfile.new(parent_instance: self) end end class ServerProfile__9 < ConfigClass def has_multiple_values? false end def _section :'server-profile__9' end class Ldap < XML::ConfigClass def has_multiple_values? true end def _section :'ldap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"ldap server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"389", "help-string"=>"default 389 for LDAP, 636 for LDAPS"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap server ip or host name. def address prop_get('address') end # ldap server ip or host name. def address=(val) prop_set('address', val) end # default 389 for LDAP, 636 for LDAPS def port prop_get('port') end # default 389 for LDAP, 636 for LDAPS def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ldap-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"other", "enum"=> [{"value"=>"active-directory"}, {"value"=>"e-directory"}, {"value"=>"sun"}, {"value"=>"other"}]}, "ssl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "verify-server-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify server certificate for SSL sessions"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "base"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"Default base distinguished name (DN) to use for searches"}, "bind-dn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"bind distinguished name"}, "bind-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"121", "encrypt"=>"yes", "help-string"=>"bind password"}, "timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"30", "help-string"=>"number of seconds to wait for performing searches"}, "bind-timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"30", "help-string"=>"number of seconds to use for connecting to servers"}, "retry-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"3600", "help-string"=>"Interval (seconds) for reconnecting LDAP server", "default"=>"60"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def ldap_type prop_get('ldap-type') end def ldap_type=(val) prop_set('ldap-type', val) end def ssl prop_get('ssl') end def ssl=(val) prop_set('ssl', val) end # Verify server certificate for SSL sessions def verify_server_certificate prop_get('verify-server-certificate') end # Verify server certificate for SSL sessions def verify_server_certificate=(val) prop_set('verify-server-certificate', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Default base distinguished name (DN) to use for searches def base prop_get('base') end # Default base distinguished name (DN) to use for searches def base=(val) prop_set('base', val) end # bind distinguished name def bind_dn prop_get('bind-dn') end # bind distinguished name def bind_dn=(val) prop_set('bind-dn', val) end # bind password def bind_password prop_get('bind-password') end # bind password def bind_password=(val) prop_set('bind-password', val) end # number of seconds to wait for performing searches def timelimit prop_get('timelimit') end # number of seconds to wait for performing searches def timelimit=(val) prop_set('timelimit', val) end # number of seconds to use for connecting to servers def bind_timelimit prop_get('bind-timelimit') end # number of seconds to use for connecting to servers def bind_timelimit=(val) prop_set('bind-timelimit', val) end # Interval (seconds) for reconnecting LDAP server def retry_interval prop_get('retry-interval') end # Interval (seconds) for reconnecting LDAP server def retry_interval=(val) prop_set('retry-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ldap def ldap if @create_children @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) else Ldap.new(parent_instance: self) end end class Radius < XML::ConfigClass def has_multiple_values? true end def _section :'radius' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class CHAP < ConfigClass def has_multiple_values? false end def _section :'CHAP' end @props={} end # class CHAP def CHAP @subclasses['CHAP'] ||= CHAP.new(parent_instance: self, create_children: @create_children) end class PAP < ConfigClass def has_multiple_values? false end def _section :'PAP' end @props={} end # class PAP def PAP @subclasses['PAP'] ||= PAP.new(parent_instance: self, create_children: @create_children) end class PEAPMSCHAPv2 < ConfigClass def has_multiple_values? false end def _section :'PEAP-MSCHAPv2' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "allow-pwd-change"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Allow users to change passwords after expiry"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Allow users to change passwords after expiry def allow_pwd_change prop_get('allow-pwd-change') end # Allow users to change passwords after expiry def allow_pwd_change=(val) prop_set('allow-pwd-change', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPMSCHAPv2 def PEAP_MSCHAPv2 @subclasses['PEAP-MSCHAPv2'] ||= PEAPMSCHAPv2.new(parent_instance: self, create_children: @create_children) end class PEAPWithGTC < ConfigClass def has_multiple_values? false end def _section :'PEAP-with-GTC' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPWithGTC def PEAP_with_GTC @subclasses['PEAP-with-GTC'] ||= PEAPWithGTC.new(parent_instance: self, create_children: @create_children) end class EAPTTLSWithPAP < ConfigClass def has_multiple_values? false end def _section :'EAP-TTLS-with-PAP' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class EAPTTLSWithPAP def EAP_TTLS_with_PAP @subclasses['EAP-TTLS-with-PAP'] ||= EAPTTLSWithPAP.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"RADIUS server IP or host name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for RADIUS communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1812", "help-string"=>"RADIUS server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # RADIUS server IP or host name def ip_address prop_get('ip-address') end # RADIUS server IP or host name def ip_address=(val) prop_set('ip-address', val) end # Shared secret for RADIUS communication def secret prop_get('secret') end # Shared secret for RADIUS communication def secret=(val) prop_set('secret', val) end # RADIUS server port def port prop_get('port') end # RADIUS server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"120", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"3", "help-string"=>"number of attempts before giving up authentication"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # number of attempts before giving up authentication def retries prop_get('retries') end # number of attempts before giving up authentication def retries=(val) prop_set('retries', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Radius def radius if @create_children @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) else Radius.new(parent_instance: self) end end class Scp < XML::ConfigClass def has_multiple_values? true end def _section :'scp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"SCP hostname"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"22", "help-string"=>"SCP port"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"128", "regex"=>"[^']*", "help-string"=>"SCP username"}, "password"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "regex"=>"[^']*", "help-string"=>"SCP Password", "encrypt"=>"yes"}} # alphanumeric string def name prop_get('@name') end # SCP hostname def server prop_get('server') end # SCP hostname def server=(val) prop_set('server', val) end # SCP port def port prop_get('port') end # SCP port def port=(val) prop_set('port', val) end # SCP username def username prop_get('username') end # SCP username def username=(val) prop_set('username', val) end # SCP Password def password prop_get('password') end # SCP Password def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scp def scp if @create_children @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) else Scp.new(parent_instance: self) end end class Kerberos < XML::ConfigClass def has_multiple_values? true end def _section :'kerberos' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Kerberos server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"88", "help-string"=>"Kerberos Domain Controller "}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Kerberos server ip or host name. def host prop_get('host') end # Kerberos server ip or host name. def host=(val) prop_set('host', val) end # Kerberos Domain Controller def port prop_get('port') end # Kerberos Domain Controller def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Kerberos def kerberos if @create_children @subclasses['kerberos'] ||= Kerberos.new(parent_instance: self, create_children: @create_children) else Kerberos.new(parent_instance: self) end end class Tacplus < XML::ConfigClass def has_multiple_values? true end def _section :'tacplus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"TACACS+ server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for TACACS+ communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"49", "help-string"=>"TACACS+ server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # TACACS+ server ip or host name. def address prop_get('address') end # TACACS+ server ip or host name. def address=(val) prop_set('address', val) end # Shared secret for TACACS+ communication def secret prop_get('secret') end # Shared secret for TACACS+ communication def secret=(val) prop_set('secret', val) end # TACACS+ server port def port prop_get('port') end # TACACS+ server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "use-single-connection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use single connection for all authentication"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"CHAP", "help-string"=>"Select authentication protocol", "enum"=>[{"value"=>"CHAP"}, {"value"=>"PAP"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # Use single connection for all authentication def use_single_connection prop_get('use-single-connection') end # Use single connection for all authentication def use_single_connection=(val) prop_set('use-single-connection', val) end # Select authentication protocol def protocol prop_get('protocol') end # Select authentication protocol def protocol=(val) prop_set('protocol', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tacplus def tacplus if @create_children @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) else Tacplus.new(parent_instance: self) end end class SamlIdp < XML::ConfigClass def has_multiple_values? true end def _section :'saml-idp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "entity-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Unique identifier for SAML IdP"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "complete-handler"=>"check-idp-cert-fields-completer", "help-string"=>"Object name of IdP signing certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry/@name", "#myentry(vsys)/certificate/entry/@name"]}, "sso-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Sign On Service URL for the IdP server"}, "sso-bindings"=> {"node-type"=>"element", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "slo-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Logout Service URL for the IdP server"}, "slo-bindings"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "validate-idp-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Certificate revocation check for IdP certificate when checking assertion signature"}, "want-auth-requests-signed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Client auth request signed by cert"}, "max-clock-skew"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"900", "default"=>"60", "help-string"=> "maximum allowed clock skew in second between SAML entities' system time"}, "attribute-name-username-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response"}, "attribute-name-usergroup-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup"}, "attribute-name-admin-role-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role"}, "attribute-name-access-domain-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Unique identifier for SAML IdP def entity_id prop_get('entity-id') end # Unique identifier for SAML IdP def entity_id=(val) prop_set('entity-id', val) end # Object name of IdP signing certificate def certificate prop_get('certificate') end # Object name of IdP signing certificate def certificate=(val) prop_set('certificate', val) end # The Single Sign On Service URL for the IdP server def sso_url prop_get('sso-url') end # The Single Sign On Service URL for the IdP server def sso_url=(val) prop_set('sso-url', val) end def sso_bindings prop_get('sso-bindings') end def sso_bindings=(val) prop_set('sso-bindings', val) end # The Single Logout Service URL for the IdP server def slo_url prop_get('slo-url') end # The Single Logout Service URL for the IdP server def slo_url=(val) prop_set('slo-url', val) end def slo_bindings prop_get('slo-bindings') end def slo_bindings=(val) prop_set('slo-bindings', val) end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate prop_get('validate-idp-certificate') end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate=(val) prop_set('validate-idp-certificate', val) end # Client auth request signed by cert def want_auth_requests_signed prop_get('want-auth-requests-signed') end # Client auth request signed by cert def want_auth_requests_signed=(val) prop_set('want-auth-requests-signed', val) end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew prop_get('max-clock-skew') end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew=(val) prop_set('max-clock-skew', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username_import prop_get('attribute-name-username-import') end # Attribute name for username to be extracted from SAML response def attribute_name_username_import=(val) prop_set('attribute-name-username-import', val) end # usergroup def attribute_name_usergroup_import prop_get('attribute-name-usergroup-import') end # usergroup def attribute_name_usergroup_import=(val) prop_set('attribute-name-usergroup-import', val) end # admin-role def attribute_name_admin_role_import prop_get('attribute-name-admin-role-import') end # admin-role def attribute_name_admin_role_import=(val) prop_set('attribute-name-admin-role-import', val) end # access-domain def attribute_name_access_domain_import prop_get('attribute-name-access-domain-import') end # access-domain def attribute_name_access_domain_import=(val) prop_set('attribute-name-access-domain-import', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SamlIdp def saml_idp if @create_children @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) else SamlIdp.new(parent_instance: self) end end class Netflow < XML::ConfigClass def has_multiple_values? true end def _section :'netflow' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TemplateRefreshRate < ConfigClass def has_multiple_values? false end def _section :'template-refresh-rate' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30"}, "packets"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"20"}} def minutes prop_get('minutes') end def minutes=(val) prop_set('minutes', val) end def packets prop_get('packets') end def packets=(val) prop_set('packets', val) end end # class TemplateRefreshRate def template_refresh_rate @subclasses['template-refresh-rate'] ||= TemplateRefreshRate.new(parent_instance: self, create_children: @create_children) end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Netflow server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"loose-membership"=>"yes", "maxlen"=>"63"}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2055", "min"=>"1", "max"=>"65535", "help-string"=>"Netflow server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Netflow server ip or host name. def host prop_get('host') end # Netflow server ip or host name. def host=(val) prop_set('host', val) end # Netflow server port def port prop_get('port') end # Netflow server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "active-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Active timeout in minutes"}, "export-enterprise-fields"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Export PAN-OS Specific Field Types"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Active timeout in minutes def active_timeout prop_get('active-timeout') end # Active timeout in minutes def active_timeout=(val) prop_set('active-timeout', val) end # Export PAN-OS Specific Field Types def export_enterprise_fields prop_get('export-enterprise-fields') end # Export PAN-OS Specific Field Types def export_enterprise_fields=(val) prop_set('export-enterprise-fields', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Netflow def netflow if @create_children @subclasses['netflow'] ||= Netflow.new(parent_instance: self, create_children: @create_children) else Netflow.new(parent_instance: self) end end class Dns < XML::ConfigClass def has_multiple_values? true end def _section :'dns' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "#myentry(devices)/network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Dns def dns if @create_children @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) else Dns.new(parent_instance: self) end end class MfaServerProfile < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-server-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MfaConfig < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/auth/mfa/entry[@name='$vnd']/content/entry/@name"]}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaConfig def mfa_config if @create_children @subclasses['mfa-config'] ||= MfaConfig.new(parent_instance: self, create_children: @create_children) else MfaConfig.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"MFA Server Profile Name"}, "mfa-vendor-type"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=>["##/predefined/auth/mfa/entry/@name"]}, "mfa-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the MFA Vendor", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # MFA Server Profile Name def name prop_get('@name') end # Vendor and product type def mfa_vendor_type prop_get('mfa-vendor-type') end # Vendor and product type def mfa_vendor_type=(val) prop_set('mfa-vendor-type', val) end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile prop_get('mfa-cert-profile') end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile=(val) prop_set('mfa-cert-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaServerProfile def mfa_server_profile if @create_children @subclasses['mfa-server-profile'] ||= MfaServerProfile.new(parent_instance: self, create_children: @create_children) else MfaServerProfile.new(parent_instance: self) end end @props={} end # class ServerProfile__9 def server_profile__9 @subclasses['server-profile__9'] ||= ServerProfile__9.new(parent_instance: self, create_children: @create_children) end class DnsProxy < XML::ConfigClass def has_multiple_values? true end def _section :'dns-proxy' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/import/network/interface/member", "#myentry(vsys)/import/network/interface/member"]}} # Interface name def member prop_get('member') end # Interface name def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class DomainServers < XML::ConfigClass def has_multiple_values? true end def _section :'domain-servers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DomainName < XML::ConfigClass def has_multiple_values? true end def _section :'domain-name' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\*\\-]+$", "maxlen"=>"128", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def member prop_get('member') end # Dotted domain name with optional wildcards def member=(val) prop_set('member', val) end end # class DomainName def domain_name if @create_children @subclasses['domain-name'] ||= DomainName.new(parent_instance: self, create_children: @create_children) else DomainName.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "cacheable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching of domains resolved by this mapping"}, "server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"DNS server object", "autocomplete"=>"yes", "memberof"=>["#myentry(vsys)/server-profile/dns/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Turn on caching of domains resolved by this mapping def cacheable prop_get('cacheable') end # Turn on caching of domains resolved by this mapping def cacheable=(val) prop_set('cacheable', val) end # DNS server object def server_profile prop_get('server-profile') end # DNS server object def server_profile=(val) prop_set('server-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DomainServers def domain_servers if @create_children @subclasses['domain-servers'] ||= DomainServers.new(parent_instance: self, create_children: @create_children) else DomainServers.new(parent_instance: self) end end class Cache < ConfigClass def has_multiple_values? false end def _section :'cache' end class MaxTtl < ConfigClass def has_multiple_values? false end def _section :'max-ttl' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable max ttl for this DNS object"}, "time-to-live"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"86400", "help-string"=>"Time in seconds after which entry is cleared"}} # Enable max ttl for this DNS object def enabled prop_get('enabled') end # Enable max ttl for this DNS object def enabled=(val) prop_set('enabled', val) end # Time in seconds after which entry is cleared def time_to_live prop_get('time-to-live') end # Time in seconds after which entry is cleared def time_to_live=(val) prop_set('time-to-live', val) end end # class MaxTtl def max_ttl @subclasses['max-ttl'] ||= MaxTtl.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching for this DNS object"}, "cache-edns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Cache EDNS UDP response"}} # Turn on caching for this DNS object def enabled prop_get('enabled') end # Turn on caching for this DNS object def enabled=(val) prop_set('enabled', val) end # Cache EDNS UDP response def cache_edns prop_get('cache-edns') end # Cache EDNS UDP response def cache_edns=(val) prop_set('cache-edns', val) end end # class Cache def cache @subclasses['cache'] ||= Cache.new(parent_instance: self, create_children: @create_children) end class StaticEntries < XML::ConfigClass def has_multiple_values? true end def _section :'static-entries' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Resolved IP address", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Resolved IP address def member prop_get('member') end # Resolved IP address def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "domain"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"Fully qualified domain name for specified IP address"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Fully qualified domain name for specified IP address def domain prop_get('domain') end # Fully qualified domain name for specified IP address def domain=(val) prop_set('domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticEntries def static_entries if @create_children @subclasses['static-entries'] ||= StaticEntries.new(parent_instance: self, create_children: @create_children) else StaticEntries.new(parent_instance: self) end end class TcpQueries < ConfigClass def has_multiple_values? false end def _section :'tcp-queries' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Turn on forwarding of TCP DNS queries"}, "max-pending-requests"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"64", "max"=>"256", "default"=>"64", "help-string"=>"Upper limit on number of concurrent TCP DNS requests"}} # Turn on forwarding of TCP DNS queries def enabled prop_get('enabled') end # Turn on forwarding of TCP DNS queries def enabled=(val) prop_set('enabled', val) end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests prop_get('max-pending-requests') end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests=(val) prop_set('max-pending-requests', val) end end # class TcpQueries def tcp_queries @subclasses['tcp-queries'] ||= TcpQueries.new(parent_instance: self, create_children: @create_children) end class UdpQueries < ConfigClass def has_multiple_values? false end def _section :'udp-queries' end class Retries < ConfigClass def has_multiple_values? false end def _section :'retries' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"2", "help-string"=>"Time in seconds for another request to be sent"}, "attempts"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"5", "help-string"=>"Maximum number of retries before trying next name server"}} # Time in seconds for another request to be sent def interval prop_get('interval') end # Time in seconds for another request to be sent def interval=(val) prop_set('interval', val) end # Maximum number of retries before trying next name server def attempts prop_get('attempts') end # Maximum number of retries before trying next name server def attempts=(val) prop_set('attempts', val) end end # class Retries def retries @subclasses['retries'] ||= Retries.new(parent_instance: self, create_children: @create_children) end @props={} end # class UdpQueries def udp_queries @subclasses['udp-queries'] ||= UdpQueries.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable or disable processing of DNS requests on interface(s) on this object"}, "server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"DNS server object", "autocomplete"=>"yes", "memberof"=>["#myentry(vsys)/server-profile/dns/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled prop_get('enabled') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled=(val) prop_set('enabled', val) end # DNS server object def server_profile prop_get('server-profile') end # DNS server object def server_profile=(val) prop_set('server-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DnsProxy def dns_proxy if @create_children @subclasses['dns-proxy'] ||= DnsProxy.new(parent_instance: self, create_children: @create_children) else DnsProxy.new(parent_instance: self) end end class LogSettings__11 < ConfigClass def has_multiple_values? false end def _section :'log-settings__11' end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/snmptrap/entry[version]/@name", "#myentry(vsys)/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/email/entry[server]/@name", "#myentry(vsys)/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/syslog/entry[server]/@name", "#myentry(vsys)/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#myentry(vsys)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/http/entry[tag-registration='yes']/@name", "#myentry(vsys)/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SMTP gateway to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$|^\\$([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SYSLOG server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings__11 def log_settings__11 @subclasses['log-settings__11'] ||= LogSettings__11.new(parent_instance: self, create_children: @create_children) end class Certificate < XML::ConfigClass def has_multiple_values? true end def _section :'certificate' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "common-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "algorithm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "ca"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes"}, "not-valid-after"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "not-valid-before"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "expiry-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}, "subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "subject-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "issuer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "issuer-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "private-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"16384", "encrypt"=>"yes", "double-encrypt"=>"yes"}, "private-key-on-hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "status"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"valid", "enum"=>[{"value"=>"valid"}, {"value"=>"revoked"}]}, "revoke-date-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def common_name prop_get('common-name') end def common_name=(val) prop_set('common-name', val) end def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end def ca prop_get('ca') end def ca=(val) prop_set('ca', val) end def not_valid_after prop_get('not-valid-after') end def not_valid_after=(val) prop_set('not-valid-after', val) end def not_valid_before prop_get('not-valid-before') end def not_valid_before=(val) prop_set('not-valid-before', val) end def expiry_epoch prop_get('expiry-epoch') end def expiry_epoch=(val) prop_set('expiry-epoch', val) end def subject prop_get('subject') end def subject=(val) prop_set('subject', val) end def subject_hash prop_get('subject-hash') end def subject_hash=(val) prop_set('subject-hash', val) end def issuer prop_get('issuer') end def issuer=(val) prop_set('issuer', val) end def issuer_hash prop_get('issuer-hash') end def issuer_hash=(val) prop_set('issuer-hash', val) end def private_key prop_get('private-key') end def private_key=(val) prop_set('private-key', val) end def private_key_on_hsm prop_get('private-key-on-hsm') end def private_key_on_hsm=(val) prop_set('private-key-on-hsm', val) end def status prop_get('status') end def status=(val) prop_set('status', val) end def revoke_date_epoch prop_get('revoke-date-epoch') end def revoke_date_epoch=(val) prop_set('revoke-date-epoch', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Certificate def certificate if @create_children @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) else Certificate.new(parent_instance: self) end end class SslTlsServiceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-tls-service-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class ProtocolSettings def protocol_settings @subclasses['protocol-settings'] ||= ProtocolSettings.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"127", "regex"=>".*", "help-string"=>"Profile name"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"SSL certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # Profile name def name prop_get('@name') end # SSL certificate file name def certificate prop_get('certificate') end # SSL certificate file name def certificate=(val) prop_set('certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslTlsServiceProfile def ssl_tls_service_profile if @create_children @subclasses['ssl-tls-service-profile'] ||= SslTlsServiceProfile.new(parent_instance: self, create_children: @create_children) else SslTlsServiceProfile.new(parent_instance: self) end end class ResponsePage__14 < ConfigClass def has_multiple_values? false end def _section :'response-page__14' end class GlobalProtectPortalCustomLoginPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-login-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomLoginPage def global_protect_portal_custom_login_page if @create_children @subclasses['global-protect-portal-custom-login-page'] ||= GlobalProtectPortalCustomLoginPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomLoginPage.new(parent_instance: self) end end class GlobalProtectPortalCustomHomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-home-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHomePage def global_protect_portal_custom_home_page if @create_children @subclasses['global-protect-portal-custom-home-page'] ||= GlobalProtectPortalCustomHomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHomePage.new(parent_instance: self) end end class GlobalProtectPortalCustomHelpPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-help-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHelpPage def global_protect_portal_custom_help_page if @create_children @subclasses['global-protect-portal-custom-help-page'] ||= GlobalProtectPortalCustomHelpPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHelpPage.new(parent_instance: self) end end class GlobalProtectPortalCustomWelcomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-welcome-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomWelcomePage def global_protect_portal_custom_welcome_page if @create_children @subclasses['global-protect-portal-custom-welcome-page'] ||= GlobalProtectPortalCustomWelcomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomWelcomePage.new(parent_instance: self) end end @props={"application-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "captive-portal-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "file-block-continue-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "file-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "ssl-cert-status-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "ssl-optout-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "url-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "url-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "credential-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "credential-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "virus-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "data-filter-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "safe-search-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "saml-auth-internal-error-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "mfa-login-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}} def application_block_page prop_get('application-block-page') end def application_block_page=(val) prop_set('application-block-page', val) end def captive_portal_text prop_get('captive-portal-text') end def captive_portal_text=(val) prop_set('captive-portal-text', val) end def file_block_continue_page prop_get('file-block-continue-page') end def file_block_continue_page=(val) prop_set('file-block-continue-page', val) end def file_block_page prop_get('file-block-page') end def file_block_page=(val) prop_set('file-block-page', val) end def ssl_cert_status_page prop_get('ssl-cert-status-page') end def ssl_cert_status_page=(val) prop_set('ssl-cert-status-page', val) end def ssl_optout_text prop_get('ssl-optout-text') end def ssl_optout_text=(val) prop_set('ssl-optout-text', val) end def url_block_page prop_get('url-block-page') end def url_block_page=(val) prop_set('url-block-page', val) end def url_coach_text prop_get('url-coach-text') end def url_coach_text=(val) prop_set('url-coach-text', val) end def credential_block_page prop_get('credential-block-page') end def credential_block_page=(val) prop_set('credential-block-page', val) end def credential_coach_text prop_get('credential-coach-text') end def credential_coach_text=(val) prop_set('credential-coach-text', val) end def virus_block_page prop_get('virus-block-page') end def virus_block_page=(val) prop_set('virus-block-page', val) end def data_filter_block_page prop_get('data-filter-block-page') end def data_filter_block_page=(val) prop_set('data-filter-block-page', val) end def safe_search_block_page prop_get('safe-search-block-page') end def safe_search_block_page=(val) prop_set('safe-search-block-page', val) end def saml_auth_internal_error_page prop_get('saml-auth-internal-error-page') end def saml_auth_internal_error_page=(val) prop_set('saml-auth-internal-error-page', val) end def mfa_login_page prop_get('mfa-login-page') end def mfa_login_page=(val) prop_set('mfa-login-page', val) end end # class ResponsePage__14 def response_page__14 @subclasses['response-page__14'] ||= ResponsePage__14.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase__15 < ConfigClass def has_multiple_values? false end def _section :'local-user-database__15' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"User name"}, "phash"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # User name def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end class UserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'user-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"User name", "autocomplete"=>"yes", "memberof"=>["#local-user-database/user/entry/@name"]}} # User name def member prop_get('member') end # User name def member=(val) prop_set('member', val) end end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Group name"}} # Group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UserGroup def user_group if @create_children @subclasses['user-group'] ||= UserGroup.new(parent_instance: self, create_children: @create_children) else UserGroup.new(parent_instance: self) end end @props={} end # class LocalUserDatabase__15 def local_user_database__15 @subclasses['local-user-database__15'] ||= LocalUserDatabase__15.new(parent_instance: self, create_children: @create_children) end class SslDecrypt__16 < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt__16' end class ForwardTrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-trust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key or private-key-on-hsm='yes']/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key or private-key-on-hsm='yes']/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardTrustCertificate def forward_trust_certificate @subclasses['forward-trust-certificate'] ||= ForwardTrustCertificate.new(parent_instance: self, create_children: @create_children) end class ForwardUntrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-untrust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardUntrustCertificate def forward_untrust_certificate @subclasses['forward-untrust-certificate'] ||= ForwardUntrustCertificate.new(parent_instance: self, create_children: @create_children) end class SslExcludeCert < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-exclude-cert' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"SSL Decryption Exclusion entry name"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"512"}, "exclude"=>{"node-type"=>"element", "type"=>"bool"}} # SSL Decryption Exclusion entry name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def exclude prop_get('exclude') end def exclude=(val) prop_set('exclude', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslExcludeCert def ssl_exclude_cert if @create_children @subclasses['ssl-exclude-cert'] ||= SslExcludeCert.new(parent_instance: self, create_children: @create_children) else SslExcludeCert.new(parent_instance: self) end end class RootCaExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca-exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=>["##/predefined/trusted-root-ca/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCaExcludeList def root_ca_exclude_list if @create_children @subclasses['root-ca-exclude-list'] ||= RootCaExcludeList.new(parent_instance: self, create_children: @create_children) else RootCaExcludeList.new(parent_instance: self) end end class TrustedRootCA < XML::ConfigClass def has_multiple_values? true end def _section :'trusted-root-CA' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Trusted Root CA", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)]/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"]}} # Trusted Root CA def member prop_get('member') end # Trusted Root CA def member=(val) prop_set('member', val) end end # class TrustedRootCA def trusted_root_CA if @create_children @subclasses['trusted-root-CA'] ||= TrustedRootCA.new(parent_instance: self, create_children: @create_children) else TrustedRootCA.new(parent_instance: self) end end @props={} end # class SslDecrypt__16 def ssl_decrypt__16 @subclasses['ssl-decrypt__16'] ||= SslDecrypt__16.new(parent_instance: self, create_children: @create_children) end class OcspResponder < XML::ConfigClass def has_multiple_values? true end def _section :'ocsp-responder' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [:0-9a-zA-Z._-]"}, "host-name"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^([$:a-zA-Z0-9._-])+$", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}} # alphanumeric string [:0-9a-zA-Z._-] def name prop_get('@name') end def host_name prop_get('host-name') end def host_name=(val) prop_set('host-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OcspResponder def ocsp_responder if @create_children @subclasses['ocsp-responder'] ||= OcspResponder.new(parent_instance: self, create_children: @create_children) else OcspResponder.new(parent_instance: self) end end class Scep < XML::ConfigClass def has_multiple_values? true end def _section :'scep' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScepChallenge < XML::ConfigClass def has_multiple_values? true end def _section :'scep-challenge' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"otp-server-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"URL to get the One-Time-Password", "uiHint-fieldLabel"=>"Server URL"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Username to authenticate to the SCEP server for procuring OTP"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Password to authenticate to the SCEP server for procuring OTP"}} # URL to get the One-Time-Password def otp_server_url prop_get('otp-server-url') end # URL to get the One-Time-Password def otp_server_url=(val) prop_set('otp-server-url', val) end # Username to authenticate to the SCEP server for procuring OTP def username prop_get('username') end # Username to authenticate to the SCEP server for procuring OTP def username=(val) prop_set('username', val) end # Password to authenticate to the SCEP server for procuring OTP def password prop_get('password') end # Password to authenticate to the SCEP server for procuring OTP def password=(val) prop_set('password', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"fixed"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "regex"=>"[^']*", "helpstring"=>"Challenge to use for SCEP server on mobile clients"}} def fixed prop_get('fixed') end def fixed=(val) prop_set('fixed', val) end end # class ScepChallenge def scep_challenge if @create_children @subclasses['scep-challenge'] ||= ScepChallenge.new(parent_instance: self, create_children: @create_children) else ScepChallenge.new(parent_instance: self) end end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Rsa < ConfigClass def has_multiple_values? false end def _section :'rsa' end @props={"rsa-nbits"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-nbits-complete-handler", "help-string"=>"Length of the key", "autocomplete"=>"yes"}} # Length of the key def rsa_nbits prop_get('rsa-nbits') end # Length of the key def rsa_nbits=(val) prop_set('rsa-nbits', val) end end # class Rsa def rsa @subclasses['rsa'] ||= Rsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end @props={"rfc822name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"rfc822Name"}, "dnsname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"dNSName"}, "uniform-resource-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"uniformResourceIdentifier"}} # rfc822Name def rfc822name prop_get('rfc822name') end # rfc822Name def rfc822name=(val) prop_set('rfc822name', val) end # dNSName def dnsname prop_get('dnsname') end # dNSName def dnsname=(val) prop_set('dnsname', val) end # uniformResourceIdentifier def uniform_resource_identifier prop_get('uniform-resource-identifier') end # uniformResourceIdentifier def uniform_resource_identifier=(val) prop_set('uniform-resource-identifier', val) end end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "scep-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"The base URL for the SCEP server"}, "scep-ca-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"SCEP Server CA Certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"]}, "scep-client-cert"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "optional"=>"yes", "help-string"=> "Client Certificate to use when connecting to SCEP Server over SSL", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "ca-identity-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Name of the SCEP server CA Identity"}, "subject"=> {"node-type"=>"element", "regex"=>"(.*)CN=(.*?)(.*)", "type"=>"string", "default"=>"CN=$USERNAME", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"Representation of a X.500 name"}, "digest"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-digest-complete-handler", "help-string"=>"Digest Algorithm for CSR", "autocomplete"=>"yes"}, "fingerprint"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Hex String to use as a fingerprint"}, "use-as-digital-signature"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use as digital signature", "uiHint-fieldLabel"=>"Use as digital signature"}, "use-for-key-encipherment"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use for key encipherment", "uiHint-fieldLabel"=>"Use for key encipherment"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The base URL for the SCEP server def scep_url prop_get('scep-url') end # The base URL for the SCEP server def scep_url=(val) prop_set('scep-url', val) end # SCEP Server CA Certificate def scep_ca_cert prop_get('scep-ca-cert') end # SCEP Server CA Certificate def scep_ca_cert=(val) prop_set('scep-ca-cert', val) end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert prop_get('scep-client-cert') end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert=(val) prop_set('scep-client-cert', val) end # Name of the SCEP server CA Identity def ca_identity_name prop_get('ca-identity-name') end # Name of the SCEP server CA Identity def ca_identity_name=(val) prop_set('ca-identity-name', val) end # Representation of a X.500 name def subject prop_get('subject') end # Representation of a X.500 name def subject=(val) prop_set('subject', val) end # Digest Algorithm for CSR def digest prop_get('digest') end # Digest Algorithm for CSR def digest=(val) prop_set('digest', val) end # Hex String to use as a fingerprint def fingerprint prop_get('fingerprint') end # Hex String to use as a fingerprint def fingerprint=(val) prop_set('fingerprint', val) end # Use as digital signature def use_as_digital_signature prop_get('use-as-digital-signature') end # Use as digital signature def use_as_digital_signature=(val) prop_set('use-as-digital-signature', val) end # Use for key encipherment def use_for_key_encipherment prop_get('use-for-key-encipherment') end # Use for key encipherment def use_for_key_encipherment=(val) prop_set('use-for-key-encipherment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scep def scep if @create_children @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) else Scep.new(parent_instance: self) end end class UrlContentTypes < XML::ConfigClass def has_multiple_values? true end def _section :'url-content-types' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "loose-membership"=>"yes", "help-string"=>"content type string", "autocomplete"=>"yes", "memberof"=>[]}} # content type string def member prop_get('member') end # content type string def member=(val) prop_set('member', val) end end # class UrlContentTypes def url_content_types if @create_children @subclasses['url-content-types'] ||= UrlContentTypes.new(parent_instance: self, create_children: @create_children) else UrlContentTypes.new(parent_instance: self) end end class TsAgent < XML::ConfigClass def has_multiple_values? true end def _section :'ts-agent' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class IpList < XML::ConfigClass def has_multiple_values? true end def _section :'ip-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"terminal server alternative ips", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"host name"}}}} # terminal server alternative ips def member prop_get('member') end # terminal server alternative ips def member=(val) prop_set('member', val) end end # class IpList def ip_list if @create_children @subclasses['ip-list'] ||= IpList.new(parent_instance: self, create_children: @create_children) else IpList.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for pan agent.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"agent IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"5009", "help-string"=>"terminal server agent listening port"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or hostname for pan agent. def host prop_get('host') end # IP address or hostname for pan agent. def host=(val) prop_set('host', val) end # terminal server agent listening port def port prop_get('port') end # terminal server agent listening port def port=(val) prop_set('port', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TsAgent def ts_agent if @create_children @subclasses['ts-agent'] ||= TsAgent.new(parent_instance: self, create_children: @create_children) else TsAgent.new(parent_instance: self) end end class RedistributionAgent < XML::ConfigClass def has_multiple_values? true end def _section :'redistribution-agent' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class HostPort < ConfigClass def has_multiple_values? false end def _section :'host-port' end @props={"host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for redistribution agent.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"agent IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "ldap-proxy"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"redistribution agent listening port"}, "collectorname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"collector name on peer panos"}, "secret"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"collector pre-shared key on peer panos"}} # IP address or hostname for redistribution agent. def host prop_get('host') end # IP address or hostname for redistribution agent. def host=(val) prop_set('host', val) end def ldap_proxy prop_get('ldap-proxy') end def ldap_proxy=(val) prop_set('ldap-proxy', val) end # redistribution agent listening port def port prop_get('port') end # redistribution agent listening port def port=(val) prop_set('port', val) end # collector name on peer panos def collectorname prop_get('collectorname') end # collector name on peer panos def collectorname=(val) prop_set('collectorname', val) end # collector pre-shared key on peer panos def secret prop_get('secret') end # collector pre-shared key on peer panos def secret=(val) prop_set('secret', val) end end # class HostPort def host_port @subclasses['host-port'] ||= HostPort.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "serial-number"=> {"node-type"=>"element", "type"=>"multiple", "complete-handler"=>"uid-agent-serial-completer", "optional"=>"yes", "help-string"=>"panorama or panorama2 or log collector serial number.", "autocomplete"=>"yes", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"63", "help-string"=>"Serial number."}}}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "ip-user-mappings"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "ip-tags"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "user-tags"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "hip"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "quarantine-list"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # panorama or panorama2 or log collector serial number. def serial_number prop_get('serial-number') end # panorama or panorama2 or log collector serial number. def serial_number=(val) prop_set('serial-number', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end def ip_user_mappings prop_get('ip-user-mappings') end def ip_user_mappings=(val) prop_set('ip-user-mappings', val) end def ip_tags prop_get('ip-tags') end def ip_tags=(val) prop_set('ip-tags', val) end def user_tags prop_get('user-tags') end def user_tags=(val) prop_set('user-tags', val) end def hip prop_get('hip') end def hip=(val) prop_set('hip', val) end def quarantine_list prop_get('quarantine-list') end def quarantine_list=(val) prop_set('quarantine-list', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistributionAgent def redistribution_agent if @create_children @subclasses['redistribution-agent'] ||= RedistributionAgent.new(parent_instance: self, create_children: @create_children) else RedistributionAgent.new(parent_instance: self) end end class IpuserIncludeExcludeList < ConfigClass def has_multiple_values? false end def _section :'ipuser-include-exclude-list' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"network address/prefix to include or exclude", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IpuserIncludeExcludeList def ipuser_include_exclude_list @subclasses['ipuser-include-exclude-list'] ||= IpuserIncludeExcludeList.new(parent_instance: self, create_children: @create_children) end class IptagIncludeExcludeList < ConfigClass def has_multiple_values? false end def _section :'iptag-include-exclude-list' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"network address/prefix to include or exclude", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IptagIncludeExcludeList def iptag_include_exclude_list @subclasses['iptag-include-exclude-list'] ||= IptagIncludeExcludeList.new(parent_instance: self, create_children: @create_children) end class RedistributionCollector < ConfigClass def has_multiple_values? false end def _section :'redistribution-collector' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end @props={"collectorname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"collector name for data re-distribution"}, "secret"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"pre-shared key for data re-distribution"}} # collector name for data re-distribution def collectorname prop_get('collectorname') end # collector name for data re-distribution def collectorname=(val) prop_set('collectorname', val) end # pre-shared key for data re-distribution def secret prop_get('secret') end # pre-shared key for data re-distribution def secret=(val) prop_set('secret', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end @props={} end # class RedistributionCollector def redistribution_collector @subclasses['redistribution-collector'] ||= RedistributionCollector.new(parent_instance: self, create_children: @create_children) end class UserIdSslAuth < ConfigClass def has_multiple_values? false end def _section :'user-id-ssl-auth' end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class UserIdSslAuth def user_id_ssl_auth @subclasses['user-id-ssl-auth'] ||= UserIdSslAuth.new(parent_instance: self, create_children: @create_children) end class VmInfoSource < XML::ConfigClass def has_multiple_values? true end def _section :'vm-info-source' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AWSVPC < ConfigClass def has_multiple_values? false end def _section :'AWS-VPC' end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "source"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"255", "help-string"=> "IP address or name(example: ec2.amazonaws.com Default aws-region:us-east-1)", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "access-key-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"16", "maxlen"=>"32", "help-string"=>"AWS access key ID"}, "secret-access-key"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"AWS secret access key"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"60", "max"=>"1200", "default"=>"60", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}, "vpc-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"AWS VPC name or Id"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # IP address or name(example: ec2.amazonaws.com Default aws-region:us-east-1) def source prop_get('source') end # IP address or name(example: ec2.amazonaws.com Default aws-region:us-east-1) def source=(val) prop_set('source', val) end # AWS access key ID def access_key_id prop_get('access-key-id') end # AWS access key ID def access_key_id=(val) prop_set('access-key-id', val) end # AWS secret access key def secret_access_key prop_get('secret-access-key') end # AWS secret access key def secret_access_key=(val) prop_set('secret-access-key', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end # AWS VPC name or Id def vpc_id prop_get('vpc-id') end # AWS VPC name or Id def vpc_id=(val) prop_set('vpc-id', val) end end # class AWSVPC def AWS_VPC @subclasses['AWS-VPC'] ||= AWSVPC.new(parent_instance: self, create_children: @create_children) end class GoogleComputeEngine < ConfigClass def has_multiple_values? false end def _section :'Google-Compute-Engine' end class ServiceAuthType < XML::ConfigClass def has_multiple_values? true end def _section :'service-auth-type' end class ServiceInGce < ConfigClass def has_multiple_values? false end def _section :'service-in-gce' end @props={} end # class ServiceInGce def service_in_gce @subclasses['service-in-gce'] ||= ServiceInGce.new(parent_instance: self, create_children: @create_children) end class ServiceAccount < ConfigClass def has_multiple_values? false end def _section :'service-account' end @props={"service-account-cred"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"8192", "help-string"=>"GCE service account JSON file"}} # GCE service account JSON file def service_account_cred prop_get('service-account-cred') end # GCE service account JSON file def service_account_cred=(val) prop_set('service-account-cred', val) end end # class ServiceAccount def service_account @subclasses['service-account'] ||= ServiceAccount.new(parent_instance: self, create_children: @create_children) end @props={} end # class ServiceAuthType def service_auth_type if @create_children @subclasses['service-auth-type'] ||= ServiceAuthType.new(parent_instance: self, create_children: @create_children) else ServiceAuthType.new(parent_instance: self) end end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "project-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "help-string"=>"Google Compute Engine Project-ID"}, "zone-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "help-string"=>"Google Compute Engine Project-Zone-Name"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"60", "max"=>"1200", "default"=>"60", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Google Compute Engine Project-ID def project_id prop_get('project-id') end # Google Compute Engine Project-ID def project_id=(val) prop_set('project-id', val) end # Google Compute Engine Project-Zone-Name def zone_name prop_get('zone-name') end # Google Compute Engine Project-Zone-Name def zone_name=(val) prop_set('zone-name', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end end # class GoogleComputeEngine def Google_Compute_Engine @subclasses['Google-Compute-Engine'] ||= GoogleComputeEngine.new(parent_instance: self, create_children: @create_children) end class VMwareESXi < ConfigClass def has_multiple_values? false end def _section :'VMware-ESXi' end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"443", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or source name for vm-info-source", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Source name"}}}, "username"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"vm-info-source login username"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"vm-info-source login password"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"5", "max"=>"600", "default"=>"5", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end # IP address or source name for vm-info-source def source prop_get('source') end # IP address or source name for vm-info-source def source=(val) prop_set('source', val) end # vm-info-source login username def username prop_get('username') end # vm-info-source login username def username=(val) prop_set('username', val) end # vm-info-source login password def password prop_get('password') end # vm-info-source login password def password=(val) prop_set('password', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end end # class VMwareESXi def VMware_ESXi @subclasses['VMware-ESXi'] ||= VMwareESXi.new(parent_instance: self, create_children: @create_children) end class VMwareVCenter < ConfigClass def has_multiple_values? false end def _section :'VMware-vCenter' end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"443", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or source name for vm-info-source", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Source name"}}}, "username"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"vm-info-source login username"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"vm-info-source login password"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"5", "max"=>"600", "default"=>"5", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end # IP address or source name for vm-info-source def source prop_get('source') end # IP address or source name for vm-info-source def source=(val) prop_set('source', val) end # vm-info-source login username def username prop_get('username') end # vm-info-source login username def username=(val) prop_set('username', val) end # vm-info-source login password def password prop_get('password') end # vm-info-source login password def password=(val) prop_set('password', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end end # class VMwareVCenter def VMware_vCenter @subclasses['VMware-vCenter'] ||= VMwareVCenter.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VmInfoSource def vm_info_source if @create_children @subclasses['vm-info-source'] ||= VmInfoSource.new(parent_instance: self, create_children: @create_children) else VmInfoSource.new(parent_instance: self) end end class GroupMapping < XML::ConfigClass def has_multiple_values? true end def _section :'group-mapping' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GroupObject < XML::ConfigClass def has_multiple_values? true end def _section :'group-object' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupObject def group_object if @create_children @subclasses['group-object'] ||= GroupObject.new(parent_instance: self, create_children: @create_children) else GroupObject.new(parent_instance: self) end end class GroupMember < XML::ConfigClass def has_multiple_values? true end def _section :'group-member' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupMember def group_member if @create_children @subclasses['group-member'] ||= GroupMember.new(parent_instance: self, create_children: @create_children) else GroupMember.new(parent_instance: self) end end class GroupName < XML::ConfigClass def has_multiple_values? true end def _section :'group-name' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupName def group_name if @create_children @subclasses['group-name'] ||= GroupName.new(parent_instance: self, create_children: @create_children) else GroupName.new(parent_instance: self) end end class UserObject < XML::ConfigClass def has_multiple_values? true end def _section :'user-object' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserObject def user_object if @create_children @subclasses['user-object'] ||= UserObject.new(parent_instance: self, create_children: @create_children) else UserObject.new(parent_instance: self) end end class UserName < XML::ConfigClass def has_multiple_values? true end def _section :'user-name' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserName def user_name if @create_children @subclasses['user-name'] ||= UserName.new(parent_instance: self, create_children: @create_children) else UserName.new(parent_instance: self) end end class UserEmail < XML::ConfigClass def has_multiple_values? true end def _section :'user-email' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserEmail def user_email if @create_children @subclasses['user-email'] ||= UserEmail.new(parent_instance: self, create_children: @create_children) else UserEmail.new(parent_instance: self) end end class GroupEmail < XML::ConfigClass def has_multiple_values? true end def _section :'group-email' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupEmail def group_email if @create_children @subclasses['group-email'] ||= GroupEmail.new(parent_instance: self, create_children: @create_children) else GroupEmail.new(parent_instance: self) end end class AlternateUserName1 < XML::ConfigClass def has_multiple_values? true end def _section :'alternate-user-name-1' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AlternateUserName1 def alternate_user_name_1 if @create_children @subclasses['alternate-user-name-1'] ||= AlternateUserName1.new(parent_instance: self, create_children: @create_children) else AlternateUserName1.new(parent_instance: self) end end class AlternateUserName2 < XML::ConfigClass def has_multiple_values? true end def _section :'alternate-user-name-2' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AlternateUserName2 def alternate_user_name_2 if @create_children @subclasses['alternate-user-name-2'] ||= AlternateUserName2.new(parent_instance: self, create_children: @create_children) else AlternateUserName2.new(parent_instance: self) end end class AlternateUserName3 < XML::ConfigClass def has_multiple_values? true end def _section :'alternate-user-name-3' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AlternateUserName3 def alternate_user_name_3 if @create_children @subclasses['alternate-user-name-3'] ||= AlternateUserName3.new(parent_instance: self, create_children: @create_children) else AlternateUserName3.new(parent_instance: self) end end class ContainerObject < XML::ConfigClass def has_multiple_values? true end def _section :'container-object' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"128"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ContainerObject def container_object if @create_children @subclasses['container-object'] ||= ContainerObject.new(parent_instance: self, create_children: @create_children) else ContainerObject.new(parent_instance: self) end end class LastModifyAttr < XML::ConfigClass def has_multiple_values? true end def _section :'last-modify-attr' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LastModifyAttr def last_modify_attr if @create_children @subclasses['last-modify-attr'] ||= LastModifyAttr.new(parent_instance: self, create_children: @create_children) else LastModifyAttr.new(parent_instance: self) end end class GroupIncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'group-include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "max-count"=>"640"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupIncludeList def group_include_list if @create_children @subclasses['group-include-list'] ||= GroupIncludeList.new(parent_instance: self, create_children: @create_children) else GroupIncludeList.new(parent_instance: self) end end class CustomGroup < XML::ConfigClass def has_multiple_values? true end def _section :'custom-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ldap-filter"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"ldap filter criteria"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap filter criteria def ldap_filter prop_get('ldap-filter') end # ldap filter criteria def ldap_filter=(val) prop_set('ldap-filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CustomGroup def custom_group if @create_children @subclasses['custom-group'] ||= CustomGroup.new(parent_instance: self, create_children: @create_children) else CustomGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/ldap/entry/@name"]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ldap-for-serialno-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Use LDAP for fetching device serial numbers (GlobalProtect only)"}, "use-modify-timestamp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "limited-group-search"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "nested-group-level"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"20", "default"=>"10"}, "group-filter"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024", "help-string"=>"ldap search filter for group"}, "user-filter"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024", "help-string"=>"ldap search filter for user"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Domain name used for override"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"86400", "help-string"=> "Interval (seconds) for updating group membership, default is 3600 seconds"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # LDAP server object def server_profile prop_get('server-profile') end # LDAP server object def server_profile=(val) prop_set('server-profile', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Use LDAP for fetching device serial numbers (GlobalProtect only) def use_ldap_for_serialno_check prop_get('use-ldap-for-serialno-check') end # Use LDAP for fetching device serial numbers (GlobalProtect only) def use_ldap_for_serialno_check=(val) prop_set('use-ldap-for-serialno-check', val) end def use_modify_timestamp prop_get('use-modify-timestamp') end def use_modify_timestamp=(val) prop_set('use-modify-timestamp', val) end def limited_group_search prop_get('limited-group-search') end def limited_group_search=(val) prop_set('limited-group-search', val) end def nested_group_level prop_get('nested-group-level') end def nested_group_level=(val) prop_set('nested-group-level', val) end # ldap search filter for group def group_filter prop_get('group-filter') end # ldap search filter for group def group_filter=(val) prop_set('group-filter', val) end # ldap search filter for user def user_filter prop_get('user-filter') end # ldap search filter for user def user_filter=(val) prop_set('user-filter', val) end # Domain name used for override def domain prop_get('domain') end # Domain name used for override def domain=(val) prop_set('domain', val) end # Interval (seconds) for updating group membership, default is 3600 seconds def update_interval prop_get('update-interval') end # Interval (seconds) for updating group membership, default is 3600 seconds def update_interval=(val) prop_set('update-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GroupMapping def group_mapping if @create_children @subclasses['group-mapping'] ||= GroupMapping.new(parent_instance: self, create_children: @create_children) else GroupMapping.new(parent_instance: self) end end class CaptivePortal < ConfigClass def has_multiple_values? false end def _section :'captive-portal' end class Mode < XML::ConfigClass def has_multiple_values? true end def _section :'mode' end class Transparent < ConfigClass def has_multiple_values? false end def _section :'transparent' end @props={} end # class Transparent def transparent @subclasses['transparent'] ||= Transparent.new(parent_instance: self, create_children: @create_children) end class Redirect < ConfigClass def has_multiple_values? false end def _section :'redirect' end class SessionCookie < ConfigClass def has_multiple_values? false end def _section :'session-cookie' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"60", "max"=>"10080", "default"=>"1440", "help-string"=>"expiration timer (minutes)"}, "roaming"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable ip roaming"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # expiration timer (minutes) def timeout prop_get('timeout') end # expiration timer (minutes) def timeout=(val) prop_set('timeout', val) end # enable/disable ip roaming def roaming prop_get('roaming') end # enable/disable ip roaming def roaming=(val) prop_set('roaming', val) end end # class SessionCookie def session_cookie @subclasses['session-cookie'] ||= SessionCookie.new(parent_instance: self, create_children: @create_children) end @props={} end # class Redirect def redirect @subclasses['redirect'] ||= Redirect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode if @create_children @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) else Mode.new(parent_instance: self) end end @props={"enable-captive-portal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "idle-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"15", "help-string"=>"idle timer (minutes)"}, "timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"60", "help-string"=>"expiration timer (minutes)"}, "redirect-host"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip or host name for redirect for captive portal", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}, "gp-udp-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"4501", "help-string"=>"MFA notification port on GP client"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Authentication profile to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} def enable_captive_portal prop_get('enable-captive-portal') end def enable_captive_portal=(val) prop_set('enable-captive-portal', val) end # idle timer (minutes) def idle_timer prop_get('idle-timer') end # idle timer (minutes) def idle_timer=(val) prop_set('idle-timer', val) end # expiration timer (minutes) def timer prop_get('timer') end # expiration timer (minutes) def timer=(val) prop_set('timer', val) end # ip or host name for redirect for captive portal def redirect_host prop_get('redirect-host') end # ip or host name for redirect for captive portal def redirect_host=(val) prop_set('redirect-host', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # MFA notification port on GP client def gp_udp_port prop_get('gp-udp-port') end # MFA notification port on GP client def gp_udp_port=(val) prop_set('gp-udp-port', val) end # Authentication profile to use for authentication. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for authentication. def authentication_profile=(val) prop_set('authentication-profile', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class CaptivePortal def captive_portal @subclasses['captive-portal'] ||= CaptivePortal.new(parent_instance: self, create_children: @create_children) end class UserIdCollector < ConfigClass def has_multiple_values? false end def _section :'user-id-collector' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end @props={"wmi-account"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"AD account name for wmi query, e.g. domain\\username"}, "wmi-password"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"password for AD account for wmi query"}, "domain-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"256", "help-string"=>"DNS Domain Name"}, "server-profile__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server object", "prune-on"=>"fips-mode,cc-only-mode", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/kerberos/entry/@name", "#myentry(vsys)/server-profile/kerberos/entry/@name"]}, "enable-security-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "security-log-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"2", "help-string"=>"security log monitor frequency in seconds"}, "enable-session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "session-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"10", "help-string"=>"windows server session monitor frequency in seconds"}, "edirectory-query-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30", "help-string"=>"server session read frequency in seconds"}, "enable-probing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "client-probing-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"20", "help-string"=>"wmi client probing frequency in minutes"}, "enable-mapping-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "ip-user-mapping-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"45", "help-string"=>"ip user mapping timeout in minutes"}, "enable-user-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "syslog-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Syslog service ssl-tls profile ", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}} # AD account name for wmi query, e.g. domain\username def wmi_account prop_get('wmi-account') end # AD account name for wmi query, e.g. domain\username def wmi_account=(val) prop_set('wmi-account', val) end # password for AD account for wmi query def wmi_password prop_get('wmi-password') end # password for AD account for wmi query def wmi_password=(val) prop_set('wmi-password', val) end # DNS Domain Name def domain_name prop_get('domain-name') end # DNS Domain Name def domain_name=(val) prop_set('domain-name', val) end # Kerberos server object def server_profile__4 prop_get('server-profile__4') end # Kerberos server object def server_profile__4=(val) prop_set('server-profile__4', val) end def enable_security_log prop_get('enable-security-log') end def enable_security_log=(val) prop_set('enable-security-log', val) end # security log monitor frequency in seconds def security_log_interval prop_get('security-log-interval') end # security log monitor frequency in seconds def security_log_interval=(val) prop_set('security-log-interval', val) end def enable_session prop_get('enable-session') end def enable_session=(val) prop_set('enable-session', val) end # windows server session monitor frequency in seconds def session_interval prop_get('session-interval') end # windows server session monitor frequency in seconds def session_interval=(val) prop_set('session-interval', val) end # server session read frequency in seconds def edirectory_query_interval prop_get('edirectory-query-interval') end # server session read frequency in seconds def edirectory_query_interval=(val) prop_set('edirectory-query-interval', val) end def enable_probing prop_get('enable-probing') end def enable_probing=(val) prop_set('enable-probing', val) end # wmi client probing frequency in minutes def client_probing_interval prop_get('client-probing-interval') end # wmi client probing frequency in minutes def client_probing_interval=(val) prop_set('client-probing-interval', val) end def enable_mapping_timeout prop_get('enable-mapping-timeout') end def enable_mapping_timeout=(val) prop_set('enable-mapping-timeout', val) end # ip user mapping timeout in minutes def ip_user_mapping_timeout prop_get('ip-user-mapping-timeout') end # ip user mapping timeout in minutes def ip_user_mapping_timeout=(val) prop_set('ip-user-mapping-timeout', val) end def enable_user_match prop_get('enable-user-match') end def enable_user_match=(val) prop_set('enable-user-match', val) end # Syslog service ssl-tls profile def syslog_service_profile prop_get('syslog-service-profile') end # Syslog service ssl-tls profile def syslog_service_profile=(val) prop_set('syslog-service-profile', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class SyslogParseProfile < XML::ConfigClass def has_multiple_values? true end def _section :'syslog-parse-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegexIdentifier < ConfigClass def has_multiple_values? false end def _section :'regex-identifier' end @props={"event-regex"=> {"node-type"=>"element", "help-string"=>"regex to identify authentication message", "type"=>"string", "maxlen"=>"1024"}, "username-regex"=> {"node-type"=>"element", "help-string"=>"regex to identify user name", "type"=>"string", "maxlen"=>"1024"}, "address-regex"=> {"node-type"=>"element", "help-string"=>"regex to identify address", "type"=>"string", "maxlen"=>"1024"}} # regex to identify authentication message def event_regex prop_get('event-regex') end # regex to identify authentication message def event_regex=(val) prop_set('event-regex', val) end # regex to identify user name def username_regex prop_get('username-regex') end # regex to identify user name def username_regex=(val) prop_set('username-regex', val) end # regex to identify address def address_regex prop_get('address-regex') end # regex to identify address def address_regex=(val) prop_set('address-regex', val) end end # class RegexIdentifier def regex_identifier @subclasses['regex-identifier'] ||= RegexIdentifier.new(parent_instance: self, create_children: @create_children) end class FieldIdentifier < ConfigClass def has_multiple_values? false end def _section :'field-identifier' end @props={"event-string"=> {"node-type"=>"element", "help-string"=>"string to identify authentication message", "type"=>"string", "maxlen"=>"1024"}, "username-prefix"=> {"node-type"=>"element", "help-string"=>"string to identify user name", "type"=>"string", "maxlen"=>"1024"}, "username-delimiter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024"}, "address-prefix"=> {"node-type"=>"element", "help-string"=>"string to identify address", "type"=>"string", "maxlen"=>"1024"}, "address-delimiter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024"}, "address-per-log"=> {"node-type"=>"element", "help-string"=>"Maximum number of addresses per log", "type"=>"rangedint", "min"=>"1", "max"=>"3", "default"=>"1", "optional"=>"yes"}} # string to identify authentication message def event_string prop_get('event-string') end # string to identify authentication message def event_string=(val) prop_set('event-string', val) end # string to identify user name def username_prefix prop_get('username-prefix') end # string to identify user name def username_prefix=(val) prop_set('username-prefix', val) end def username_delimiter prop_get('username-delimiter') end def username_delimiter=(val) prop_set('username-delimiter', val) end # string to identify address def address_prefix prop_get('address-prefix') end # string to identify address def address_prefix=(val) prop_set('address-prefix', val) end def address_delimiter prop_get('address-delimiter') end def address_delimiter=(val) prop_set('address-delimiter', val) end # Maximum number of addresses per log def address_per_log prop_get('address-per-log') end # Maximum number of addresses per log def address_per_log=(val) prop_set('address-per-log', val) end end # class FieldIdentifier def field_identifier @subclasses['field-identifier'] ||= FieldIdentifier.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SyslogParseProfile def syslog_parse_profile if @create_children @subclasses['syslog-parse-profile'] ||= SyslogParseProfile.new(parent_instance: self, create_children: @create_children) else SyslogParseProfile.new(parent_instance: self) end end class ServerMonitor < XML::ConfigClass def has_multiple_values? true end def _section :'server-monitor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ActiveDirectory < ConfigClass def has_multiple_values? false end def _section :'active-directory' end @props={"type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"WMI", "help-string"=>"Transport protocol", "enum"=> [{"value"=>"WMI", "help-string"=>"Connected to monitored server over MSRPC"}, {"value"=>"WinRM-HTTP", "help-string"=> "Connected to monitored server with encrypted HTTP payload", "prune-on"=>"fips-mode,cc-only-mode"}, {"value"=>"WinRM-HTTPS", "help-string"=>"Connected to monitored server over HTTPS", "prune-on"=>"fips-mode,cc-only-mode"}]}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}} # Transport protocol def type prop_get('type') end # Transport protocol def type=(val) prop_set('type', val) end # IP address or hostname for the server def host prop_get('host') end # IP address or hostname for the server def host=(val) prop_set('host', val) end end # class ActiveDirectory def active_directory @subclasses['active-directory'] ||= ActiveDirectory.new(parent_instance: self, create_children: @create_children) end class Exchange < ConfigClass def has_multiple_values? false end def _section :'exchange' end @props={"type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"WMI", "help-string"=>"Transport protocol", "enum"=> [{"value"=>"WMI", "help-string"=>"Connected to monitored server over MSRPC"}, {"value"=>"WinRM-HTTP", "help-string"=> "Connected to monitored server with encrypted HTTP payload"}, {"value"=>"WinRM-HTTPS", "help-string"=>"Connected to monitored server over HTTPS"}]}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}} # Transport protocol def type prop_get('type') end # Transport protocol def type=(val) prop_set('type', val) end # IP address or hostname for the server def host prop_get('host') end # IP address or hostname for the server def host=(val) prop_set('host', val) end end # class Exchange def exchange @subclasses['exchange'] ||= Exchange.new(parent_instance: self, create_children: @create_children) end class EDirectory < ConfigClass def has_multiple_values? false end def _section :'e-directory' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/ldap/entry/@name"]}} # LDAP server object def server_profile prop_get('server-profile') end # LDAP server object def server_profile=(val) prop_set('server-profile', val) end end # class EDirectory def e_directory @subclasses['e-directory'] ||= EDirectory.new(parent_instance: self, create_children: @create_children) end class Syslog < ConfigClass def has_multiple_values? false end def _section :'syslog' end class SyslogParseProfile < XML::ConfigClass def has_multiple_values? true end def _section :'syslog-parse-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"user-id syslog message parse profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/user-id-collector/syslog-parse-profile/entry/@name", "##/predefined/user-id-collector/syslog-parse-profile/entry/@name"]}, "event-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"login", "enum"=> [{"value"=>"login", "help-string"=>"Login Event"}, {"value"=>"logout", "help-string"=>"Logout Event"}]}} # user-id syslog message parse profile def name prop_get('@name') end def event_type prop_get('event-type') end def event_type=(val) prop_set('event-type', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SyslogParseProfile def syslog_parse_profile if @create_children @subclasses['syslog-parse-profile'] ||= SyslogParseProfile.new(parent_instance: self, create_children: @create_children) else SyslogParseProfile.new(parent_instance: self) end end @props={"address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address for the syslog server", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "connection-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ssl", "enum"=> [{"value"=>"udp", "help-string"=>"Receive syslog via UDP", "prune-on"=>"fips-mode"}, {"value"=>"ssl", "help-string"=>"Receive syslog via SSL"}]}, "default-domain-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63"}} # IP address for the syslog server def address prop_get('address') end # IP address for the syslog server def address=(val) prop_set('address', val) end def connection_type prop_get('connection-type') end def connection_type=(val) prop_set('connection-type', val) end def default_domain_name prop_get('default-domain-name') end def default_domain_name=(val) prop_set('default-domain-name', val) end end # class Syslog def syslog @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"255", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerMonitor def server_monitor if @create_children @subclasses['server-monitor'] ||= ServerMonitor.new(parent_instance: self, create_children: @create_children) else ServerMonitor.new(parent_instance: self) end end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"network address/prefix to include or exclude", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end class IncludeExcludeNetworkSequence < ConfigClass def has_multiple_values? false end def _section :'include-exclude-network-sequence' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/user-id-collector/include-exclude-network/entry/@name", "#myentry(vsys)/user-id-collector/include-exclude-network/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IncludeExcludeNetworkSequence def include_exclude_network_sequence @subclasses['include-exclude-network-sequence'] ||= IncludeExcludeNetworkSequence.new(parent_instance: self, create_children: @create_children) end class IgnoreUser < XML::ConfigClass def has_multiple_values? true end def _section :'ignore-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5000", "multi-types"=>{"string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IgnoreUser def ignore_user if @create_children @subclasses['ignore-user'] ||= IgnoreUser.new(parent_instance: self, create_children: @create_children) else IgnoreUser.new(parent_instance: self) end end @props={} end # class UserIdCollector def user_id_collector @subclasses['user-id-collector'] ||= UserIdCollector.new(parent_instance: self, create_children: @create_children) end class UrlAdminOverride < ConfigClass def has_multiple_values? false end def _section :'url-admin-override' end class Mode < XML::ConfigClass def has_multiple_values? true end def _section :'mode' end class Transparent < ConfigClass def has_multiple_values? false end def _section :'transparent' end @props={} end # class Transparent def transparent @subclasses['transparent'] ||= Transparent.new(parent_instance: self, create_children: @create_children) end class Redirect < ConfigClass def has_multiple_values? false end def _section :'redirect' end @props={"address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"set ip or host name for url admin override.", "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}} # set ip or host name for url admin override. def address prop_get('address') end # set ip or host name for url admin override. def address=(val) prop_set('address', val) end end # class Redirect def redirect @subclasses['redirect'] ||= Redirect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode if @create_children @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) else Mode.new(parent_instance: self) end end @props={"password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"password for url admin override"}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}} # password for url admin override def password prop_get('password') end # password for url admin override def password=(val) prop_set('password', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end end # class UrlAdminOverride def url_admin_override @subclasses['url-admin-override'] ||= UrlAdminOverride.new(parent_instance: self, create_children: @create_children) end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Tap < XML::ConfigClass def has_multiple_values? true end def _section :'tap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[tap]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tap def tap if @create_children @subclasses['tap'] ||= Tap.new(parent_instance: self, create_children: @create_children) else Tap.new(parent_instance: self) end end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class Layer2 < XML::ConfigClass def has_multiple_values? true end def _section :'layer2' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Layer2 def layer2 if @create_children @subclasses['layer2'] ||= Layer2.new(parent_instance: self, create_children: @create_children) else Layer2.new(parent_instance: self) end end class Layer3 < XML::ConfigClass def has_multiple_values? true end def _section :'layer3' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Layer3 def layer3 if @create_children @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) else Layer3.new(parent_instance: self) end end class External < XML::ConfigClass def has_multiple_values? true end def _section :'external' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/import/visible-vsys/member", "#vsys/entry[(@name='$mymember') and (count(import/visible-vsys/member[text()='$myvsysname'])>0)]/@name", "#myentry(devices)/network/shared-gateway/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class External def external if @create_children @subclasses['external'] ||= External.new(parent_instance: self, create_children: @create_children) else External.new(parent_instance: self) end end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end @props={} end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end @props={"zone-protection-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Zone protection profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/profiles/zone-protection-profile/entry/@name", "##/predefined/network-profile/zone-protection-profile/entry/@name"]}, "enable-packet-buffer-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Log setting for forwarding scan logs", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/zone/entry/network/log-setting", "##/shared/log-settings/profiles/entry/@name"]}} # Zone protection profile def zone_protection_profile prop_get('zone-protection-profile') end # Zone protection profile def zone_protection_profile=(val) prop_set('zone-protection-profile', val) end def enable_packet_buffer_protection prop_get('enable-packet-buffer-protection') end def enable_packet_buffer_protection=(val) prop_set('enable-packet-buffer-protection', val) end # Log setting for forwarding scan logs def log_setting prop_get('log-setting') end # Log setting for forwarding scan logs def log_setting=(val) prop_set('log-setting', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class UserAcl < ConfigClass def has_multiple_values? false end def _section :'user-acl' end class IncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeList def include_list if @create_children @subclasses['include-list'] ||= IncludeList.new(parent_instance: self, create_children: @create_children) else IncludeList.new(parent_instance: self) end end class ExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeList def exclude_list if @create_children @subclasses['exclude-list'] ||= ExcludeList.new(parent_instance: self, create_children: @create_children) else ExcludeList.new(parent_instance: self) end end @props={} end # class UserAcl def user_acl @subclasses['user-acl'] ||= UserAcl.new(parent_instance: self, create_children: @create_children) end class DeviceAcl < ConfigClass def has_multiple_values? false end def _section :'device-acl' end class IncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeList def include_list if @create_children @subclasses['include-list'] ||= IncludeList.new(parent_instance: self, create_children: @create_children) else IncludeList.new(parent_instance: self) end end class ExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeList def exclude_list if @create_children @subclasses['exclude-list'] ||= ExcludeList.new(parent_instance: self, create_children: @create_children) else ExcludeList.new(parent_instance: self) end end @props={} end # class DeviceAcl def device_acl @subclasses['device-acl'] ||= DeviceAcl.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable-user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "enable-device-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "dos-profile"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "help-string"=>"Denial-of-Service profile", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/dos/entry/@name", "#config/shared/profiles/dos/entry/@name", "../../../../profiles/dos/entry/@name"]}, "dos-log-setting"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding DoS logs", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#myentry(vsys)/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable_user_identification prop_get('enable-user-identification') end def enable_user_identification=(val) prop_set('enable-user-identification', val) end def enable_device_identification prop_get('enable-device-identification') end def enable_device_identification=(val) prop_set('enable-device-identification', val) end # Denial-of-Service profile def dos_profile prop_get('dos-profile') end # Denial-of-Service profile def dos_profile=(val) prop_set('dos-profile', val) end # Log setting for forwarding DoS logs def dos_log_setting prop_get('dos-log-setting') end # Log setting for forwarding DoS logs def dos_log_setting=(val) prop_set('dos-log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class SdwanInterfaceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-interface-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "link-tag"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["/config/shared/tag/entry/@name", "#myentry(vsys)/tag/entry/@name", "##/predefined/tag/entry/@name", "##/shared/tag/entry/@name", "#config/shared/tag/entry/@name", "#myentry(template)/variable/entry[type/link-tag]/@name"]}, "link-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Ethernet", "help-string"=>"Type of link", "enum"=> [{"value"=>"ADSL/DSL", "help-string"=>"ADSL/DSL Link"}, {"value"=>"Cablemodem", "help-string"=>"Cablemodem Link"}, {"value"=>"Ethernet", "help-string"=>"Ethernet Link"}, {"value"=>"Fiber", "help-string"=>"Fiber Link"}, {"value"=>"LTE/3G/4G/5G", "help-string"=>"LTE/3G/4G/5G Link"}, {"value"=>"MPLS", "help-string"=>"MPLS Link"}, {"value"=>"Microwave/Radio", "help-string"=>"Microwave/Radio Link"}, {"value"=>"Satellite", "help-string"=>"Satellite Link"}, {"value"=>"WiFi", "help-string"=>"WiFi Link"}, {"value"=>"Other", "help-string"=>"Other Type of Link"}]}, "vpn-data-tunnel-support"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Enable data traffic over VPN"}, "maximum-download"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"100000", "help-string"=>"Maximum Capacity in Mbps"}, "maximum-upload"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"100000", "help-string"=>"Maximum Capacity in Mbps"}, "error-correction"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Allow this interface for FEC / Packet Duplication"}, "path-monitoring"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Aggressive", "help-string"=>"Path Monitoring Profile", "enum"=> [{"value"=>"Aggressive", "help-string"=>"Aggressive Fixed Interval"}, {"value"=>"Relaxed", "help-string"=>"Relaxed Fixed Interval"}]}, "vpn-failover-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric for vpn tunnels on this interface"}, "probe-frequency"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"5", "help-string"=>"Number of probes sent per second"}, "probe-idle-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"86400", "default"=>"60", "help-string"=>"Idle time in seconds when no probes are sent"}, "failback-hold-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"20", "max"=>"120", "default"=>"120", "help-string"=> "Failback hold time in seconds before reverting session to original path"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end # Type of link def link_type prop_get('link-type') end # Type of link def link_type=(val) prop_set('link-type', val) end # Enable data traffic over VPN def vpn_data_tunnel_support prop_get('vpn-data-tunnel-support') end # Enable data traffic over VPN def vpn_data_tunnel_support=(val) prop_set('vpn-data-tunnel-support', val) end # Maximum Capacity in Mbps def maximum_download prop_get('maximum-download') end # Maximum Capacity in Mbps def maximum_download=(val) prop_set('maximum-download', val) end # Maximum Capacity in Mbps def maximum_upload prop_get('maximum-upload') end # Maximum Capacity in Mbps def maximum_upload=(val) prop_set('maximum-upload', val) end # Allow this interface for FEC / Packet Duplication def error_correction prop_get('error-correction') end # Allow this interface for FEC / Packet Duplication def error_correction=(val) prop_set('error-correction', val) end # Path Monitoring Profile def path_monitoring prop_get('path-monitoring') end # Path Monitoring Profile def path_monitoring=(val) prop_set('path-monitoring', val) end # Metric for vpn tunnels on this interface def vpn_failover_metric prop_get('vpn-failover-metric') end # Metric for vpn tunnels on this interface def vpn_failover_metric=(val) prop_set('vpn-failover-metric', val) end # Number of probes sent per second def probe_frequency prop_get('probe-frequency') end # Number of probes sent per second def probe_frequency=(val) prop_set('probe-frequency', val) end # Idle time in seconds when no probes are sent def probe_idle_time prop_get('probe-idle-time') end # Idle time in seconds when no probes are sent def probe_idle_time=(val) prop_set('probe-idle-time', val) end # Failback hold time in seconds before reverting session to original path def failback_hold_time prop_get('failback-hold-time') end # Failback hold time in seconds before reverting session to original path def failback_hold_time=(val) prop_set('failback-hold-time', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanInterfaceProfile def sdwan_interface_profile if @create_children @subclasses['sdwan-interface-profile'] ||= SdwanInterfaceProfile.new(parent_instance: self, create_children: @create_children) else SdwanInterfaceProfile.new(parent_instance: self) end end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end class UserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'user-group' end class Entry < XML::ConfigClass def has_multiple_values? true end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Entry def entry if @create_children @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) else Entry.new(parent_instance: self) end end @props={} end # class UserGroup def user_group if @create_children @subclasses['user-group'] ||= UserGroup.new(parent_instance: self, create_children: @create_children) else UserGroup.new(parent_instance: self) end end class GlobalProtect__36 < ConfigClass def has_multiple_values? false end def _section :'global-protect__36' end class GlobalProtectPortal < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PortalConfig < ConfigClass def has_multiple_values? false end def _section :'portal-config' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"IPv4 addresses", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/$ifname/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 addresses def ipv4 prop_get('ipv4') end # IPv4 addresses def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IPv4 address def ipv4 prop_get('ipv4') end # Floating IPv4 address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class ClientAuth < XML::ConfigClass def has_multiple_values? true end def _section :'client-auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect client authentication name"}, "os"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Any", "help-string"=>"Client OS", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"Any"}, {"value"=>"Browser"}, {"value"=>"Satellite"}]}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"authentication profile used for this GlobalProtect", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "auto-retrieve-passcode"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "Automatically retrieve passcode from SoftToken application"}, "username-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Username", "optional"=>"yes", "help-string"=>"Username Label"}, "password-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Password", "optional"=>"yes", "help-string"=>"Password Label"}, "authentication-message"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"256", "default"=>"Enter login credentials", "optional"=>"yes", "help-string"=>"Authentication Message"}, "user-credential-or-client-cert-required"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no", "optional"=>"yes", "help-string"=> "Allow Authentication with User Credentials OR Client Certificate", "enum"=> [{"value"=>"no", "help-string"=>"No (User Credentials AND Client Certificate Required)"}, {"value"=>"yes", "help-string"=> "Yes (User Credentials OR Client Certificate Required)"}]}} # GlobalProtect client authentication name def name prop_get('@name') end # Client OS def os prop_get('os') end # Client OS def os=(val) prop_set('os', val) end # authentication profile used for this GlobalProtect def authentication_profile prop_get('authentication-profile') end # authentication profile used for this GlobalProtect def authentication_profile=(val) prop_set('authentication-profile', val) end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode prop_get('auto-retrieve-passcode') end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode=(val) prop_set('auto-retrieve-passcode', val) end # Username Label def username_label prop_get('username-label') end # Username Label def username_label=(val) prop_set('username-label', val) end # Password Label def password_label prop_get('password-label') end # Password Label def password_label=(val) prop_set('password-label', val) end # Authentication Message def authentication_message prop_get('authentication-message') end # Authentication Message def authentication_message=(val) prop_set('authentication-message', val) end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required prop_get('user-credential-or-client-cert-required') end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required=(val) prop_set('user-credential-or-client-cert-required', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientAuth def client_auth if @create_children @subclasses['client-auth'] ||= ClientAuth.new(parent_instance: self, create_children: @create_children) else ClientAuth.new(parent_instance: self) end end class ConfigSelection < ConfigClass def has_multiple_values? false end def _section :'config-selection' end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Windows < ConfigClass def has_multiple_values? false end def _section :'windows' end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end @props={} end # class Windows def windows @subclasses['windows'] ||= Windows.new(parent_instance: self, create_children: @create_children) end class MacOs < ConfigClass def has_multiple_values? false end def _section :'mac-os' end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end @props={} end # class MacOs def mac_os @subclasses['mac-os'] ||= MacOs.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class ConfigSelection def config_selection @subclasses['config-selection'] ||= ConfigSelection.new(parent_instance: self, create_children: @create_children) end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "custom-login-page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"factory-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/response-page/global-protect-portal-custom-login-page/entry/@name", "#config/shared/response-page/global-protect-portal-custom-login-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-login-page/entry/@name", "string('Disable')"]}, "custom-home-page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"factory-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/response-page/global-protect-portal-custom-home-page/entry/@name", "#config/shared/response-page/global-protect-portal-custom-home-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-home-page/entry/@name"]}, "custom-help-page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["string('factory-default')", "#config/shared/response-page/global-protect-portal-custom-help-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-help-page/entry/@name"]}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/profiles/entry/@name", "#myentry(vsys)/log-settings/profiles/entry/@name"]}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end def custom_login_page prop_get('custom-login-page') end def custom_login_page=(val) prop_set('custom-login-page', val) end def custom_home_page prop_get('custom-home-page') end def custom_home_page=(val) prop_set('custom-home-page', val) end def custom_help_page prop_get('custom-help-page') end def custom_help_page=(val) prop_set('custom-help-page', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class PortalConfig def portal_config @subclasses['portal-config'] ||= PortalConfig.new(parent_instance: self, create_children: @create_children) end class ClientlessVpn < ConfigClass def has_multiple_values? false end def _section :'clientless-vpn' end class LoginLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'login-lifetime' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"1440", "min"=>"60"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"24", "min"=>"1", "default"=>"3"}} # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end end # class LoginLifetime def login_lifetime if @create_children @subclasses['login-lifetime'] ||= LoginLifetime.new(parent_instance: self, create_children: @create_children) else LoginLifetime.new(parent_instance: self) end end class InactivityLogout < XML::ConfigClass def has_multiple_values? true end def _section :'inactivity-logout' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify inactivity time in minutes", "type"=>"rangedint", "max"=>"1440", "min"=>"5", "default"=>"30"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify inactivity time in hours", "type"=>"rangedint", "max"=>"24", "min"=>"1"}} # specify inactivity time in minutes def minutes prop_get('minutes') end # specify inactivity time in minutes def minutes=(val) prop_set('minutes', val) end # specify inactivity time in hours def hours prop_get('hours') end # specify inactivity time in hours def hours=(val) prop_set('hours', val) end end # class InactivityLogout def inactivity_logout if @create_children @subclasses['inactivity-logout'] ||= InactivityLogout.new(parent_instance: self, create_children: @create_children) else InactivityLogout.new(parent_instance: self) end end class CryptoSettings < ConfigClass def has_multiple_values? false end def _section :'crypto-settings' end class SslProtocol < ConfigClass def has_multiple_values? false end def _section :'ssl-protocol' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "type"=>"bool", "prune-on"=>"cc-only-mode", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-md5__12"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Allow authentication MD5"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4 prop_get('enc-algo-rc4') end # Allow algorithm RC4 def enc_algo_rc4=(val) prop_set('enc-algo-rc4', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication MD5 def auth_algo_md5__12 prop_get('auth-algo-md5__12') end # Allow authentication MD5 def auth_algo_md5__12=(val) prop_set('auth-algo-md5__12', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class SslProtocol def ssl_protocol @subclasses['ssl-protocol'] ||= SslProtocol.new(parent_instance: self, create_children: @create_children) end class ServerCertVerification < ConfigClass def has_multiple_values? false end def _section :'server-cert-verification' end @props={"block-expired-certificate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is expired"}, "block-untrusted-issuer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is issued by untrusted CA"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}} # whether to block sessions if server's certificate is expired def block_expired_certificate prop_get('block-expired-certificate') end # whether to block sessions if server's certificate is expired def block_expired_certificate=(val) prop_set('block-expired-certificate', val) end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer prop_get('block-untrusted-issuer') end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer=(val) prop_set('block-untrusted-issuer', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end end # class ServerCertVerification def server_cert_verification @subclasses['server-cert-verification'] ||= ServerCertVerification.new(parent_instance: self, create_children: @create_children) end @props={} end # class CryptoSettings def crypto_settings @subclasses['crypto-settings'] ||= CryptoSettings.new(parent_instance: self, create_children: @create_children) end class RewriteExcludeDomainList < XML::ConfigClass def has_multiple_values? true end def _section :'rewrite-exclude-domain-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"domain name which can start with *.", "max-count"=>"200"}} # domain name which can start with *. def member prop_get('member') end # domain name which can start with *. def member=(val) prop_set('member', val) end end # class RewriteExcludeDomainList def rewrite_exclude_domain_list if @create_children @subclasses['rewrite-exclude-domain-list'] ||= RewriteExcludeDomainList.new(parent_instance: self, create_children: @create_children) else RewriteExcludeDomainList.new(parent_instance: self) end end class AppsToUserMapping < XML::ConfigClass def has_multiple_values? true end def _section :'apps-to-user-mapping' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Applications < XML::ConfigClass def has_multiple_values? true end def _section :'applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Global protect clientless app or app-group", "autocomplete"=>"yes", "memberof"=> ["#config/shared/global-protect/clientless-app/entry/@name", "#config/shared/global-protect/clientless-app-group/entry/@name", "#myentry(vsys)/global-protect/clientless-app/entry/@name", "#myentry(vsys)/global-protect/clientless-app-group/entry/@name"]}} # Global protect clientless app or app-group def member prop_get('member') end # Global protect clientless app or app-group def member=(val) prop_set('member', val) end end # class Applications def applications if @create_children @subclasses['applications'] ||= Applications.new(parent_instance: self, create_children: @create_children) else Applications.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect user to app mappings"}, "enable-custom-app-URL-address-bar"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=> "URL browse bar to access unpublished clientless VPN applications"}, "display-global-protect-agent-download-link"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Display Global Protect Agent download link"}} # GlobalProtect user to app mappings def name prop_get('@name') end # URL browse bar to access unpublished clientless VPN applications def enable_custom_app_URL_address_bar prop_get('enable-custom-app-URL-address-bar') end # URL browse bar to access unpublished clientless VPN applications def enable_custom_app_URL_address_bar=(val) prop_set('enable-custom-app-URL-address-bar', val) end # Display Global Protect Agent download link def display_global_protect_agent_download_link prop_get('display-global-protect-agent-download-link') end # Display Global Protect Agent download link def display_global_protect_agent_download_link=(val) prop_set('display-global-protect-agent-download-link', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AppsToUserMapping def apps_to_user_mapping if @create_children @subclasses['apps-to-user-mapping'] ||= AppsToUserMapping.new(parent_instance: self, create_children: @create_children) else AppsToUserMapping.new(parent_instance: self) end end class ProxyServerSetting < XML::ConfigClass def has_multiple_values? true end def _section :'proxy-server-setting' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Domains < XML::ConfigClass def has_multiple_values? true end def _section :'domains' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"domain name which can start with *.", "max-count"=>"50"}} # domain name which can start with *. def member prop_get('member') end # domain name which can start with *. def member=(val) prop_set('member', val) end end # class Domains def domains if @create_children @subclasses['domains'] ||= Domains.new(parent_instance: self, create_children: @create_children) else Domains.new(parent_instance: self) end end class ProxyServer < ConfigClass def has_multiple_values? false end def _section :'proxy-server' end @props={"server"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z.:/_-])+$", "maxlen"=>"63", "help-string"=>"Proxy server to use", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for proxy server"}, "user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Proxy user name to use"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "encrypt"=>"yes", "help-string"=>"Proxy password to use"}} # Proxy server to use def server prop_get('server') end # Proxy server to use def server=(val) prop_set('server', val) end # Port for proxy server def port prop_get('port') end # Port for proxy server def port=(val) prop_set('port', val) end # Proxy user name to use def user prop_get('user') end # Proxy user name to use def user=(val) prop_set('user', val) end # Proxy password to use def password prop_get('password') end # Proxy password to use def password=(val) prop_set('password', val) end end # class ProxyServer def proxy_server @subclasses['proxy-server'] ||= ProxyServer.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"Clientless VPN Proxy setting"}, "use-proxy"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Whether to use proxy server"}} # Clientless VPN Proxy setting def name prop_get('@name') end # Whether to use proxy server def use_proxy prop_get('use-proxy') end # Whether to use proxy server def use_proxy=(val) prop_set('use-proxy', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProxyServerSetting def proxy_server_setting if @create_children @subclasses['proxy-server-setting'] ||= ProxyServerSetting.new(parent_instance: self, create_children: @create_children) else ProxyServerSetting.new(parent_instance: self) end end @props={"hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^[$a-zA-Z0-9._-]+$", "maxlen"=>"255", "help-string"=>"FQDN or IP address of GlobalProtect Portal", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "security-zone"=> {"node-type"=>"element", "maxlen"=>"31", "optional"=>"yes", "type"=>"string", "help-string"=>"Zone to be used for clientless-vpn traffic", "autocomplete"=>"yes", "memberof"=>["#myentry(vsys)/zone/entry/@name"]}, "max-user"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30000", "platform-max"=>"cfg.general.max-sslvpn-ck-cache-size-mp", "help-string"=> "max number of concurrent logined users to GlobalProtect portal"}, "dns-proxy"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "DNS proxy object used for resolving clientless-vpn application hostnames", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/dns-proxy/entry/@name", "#myentry(vsys)/dns-proxy/entry/@name"]}} # FQDN or IP address of GlobalProtect Portal def hostname prop_get('hostname') end # FQDN or IP address of GlobalProtect Portal def hostname=(val) prop_set('hostname', val) end # Zone to be used for clientless-vpn traffic def security_zone prop_get('security-zone') end # Zone to be used for clientless-vpn traffic def security_zone=(val) prop_set('security-zone', val) end # max number of concurrent logined users to GlobalProtect portal def max_user prop_get('max-user') end # max number of concurrent logined users to GlobalProtect portal def max_user=(val) prop_set('max-user', val) end # DNS proxy object used for resolving clientless-vpn application hostnames def dns_proxy prop_get('dns-proxy') end # DNS proxy object used for resolving clientless-vpn application hostnames def dns_proxy=(val) prop_set('dns-proxy', val) end end # class ClientlessVpn def clientless_vpn @subclasses['clientless-vpn'] ||= ClientlessVpn.new(parent_instance: self, create_children: @create_children) end class ClientConfig < ConfigClass def has_multiple_values? false end def _section :'client-config' end class RootCa < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"CA cert", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"]}, "install-in-cert-store"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Install in Trusted CA Certificate Store"}} # CA cert def name prop_get('@name') end # Install in Trusted CA Certificate Store def install_in_cert_store prop_get('install-in-cert-store') end # Install in Trusted CA Certificate Store def install_in_cert_store=(val) prop_set('install-in-cert-store', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RootCa def root_ca if @create_children @subclasses['root-ca'] ||= RootCa.new(parent_instance: self, create_children: @create_children) else RootCa.new(parent_instance: self) end end class Configs < XML::ConfigClass def has_multiple_values? true end def _section :'configs' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry value name"}, "value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Registry value name def name prop_get('@name') end # Registry value data def value_data prop_get('value-data') end # Registry value data def value_data=(val) prop_set('value-data', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry key"}, "default-value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry key default value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Key does not exist or match specified value data"}} # Registry key def name prop_get('@name') end # Registry key default value data def default_value_data prop_get('default-value-data') end # Registry key default value data def default_value_data=(val) prop_set('default-value-data', val) end # Key does not exist or match specified value data def negate prop_get('negate') end # Key does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Key name"}, "value"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Key value"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Key name def name prop_get('@name') end # Key value def value prop_get('value') end # Key value def value=(val) prop_set('value', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Preference list"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Plist does not exist"}} # Preference list def name prop_get('@name') end # Plist does not exist def negate prop_get('negate') end # Plist does not exist def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end @props={} end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end class MachineAccountExistsWithSerialno < XML::ConfigClass def has_multiple_values? true end def _section :'machine-account-exists-with-serialno' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={} end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class MachineAccountExistsWithSerialno def machine_account_exists_with_serialno if @create_children @subclasses['machine-account-exists-with-serialno'] ||= MachineAccountExistsWithSerialno.new(parent_instance: self, create_children: @create_children) else MachineAccountExistsWithSerialno.new(parent_instance: self) end end class Gateways < ConfigClass def has_multiple_values? false end def _section :'gateways' end class Internal < ConfigClass def has_multiple_values? false end def _section :'internal' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv4", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv6", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 def ipv4 prop_get('ipv4') end # IPv4 def ipv4=(val) prop_set('ipv4', val) end # IPv6 def ipv6 prop_get('ipv6') end # IPv6 def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class SourceIp < XML::ConfigClass def has_multiple_values? true end def _section :'source-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceIp def source_ip if @create_children @subclasses['source-ip'] ||= SourceIp.new(parent_instance: self, create_children: @create_children) else SourceIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"description of the gateway"}, "fqdn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"255", "regex"=>"^([$:/a-zA-Z0-9._-])+$", "help-string"=>"fqdn", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}} # description of the gateway def name prop_get('@name') end # fqdn def fqdn prop_get('fqdn') end # fqdn def fqdn=(val) prop_set('fqdn', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end class DhcpOptionCode < XML::ConfigClass def has_multiple_values? true end def _section :'dhcp-option-code' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"254"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhcpOptionCode def dhcp_option_code if @create_children @subclasses['dhcp-option-code'] ||= DhcpOptionCode.new(parent_instance: self, create_children: @create_children) else DhcpOptionCode.new(parent_instance: self) end end @props={} end # class Internal def internal @subclasses['internal'] ||= Internal.new(parent_instance: self, create_children: @create_children) end class External < ConfigClass def has_multiple_values? false end def _section :'external' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv4", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv6", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 def ipv4 prop_get('ipv4') end # IPv4 def ipv4=(val) prop_set('ipv4', val) end # IPv6 def ipv6 prop_get('ipv6') end # IPv6 def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class PriorityRule < XML::ConfigClass def has_multiple_values? true end def _section :'priority-rule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"Region name", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "##/shared/region/entry/@name", "#myentry(vsys)/region/entry/@name", "string('Any')", "string('Any')"]}, "priority"=> {"node-type"=>"element", "type"=>"enum", "default"=>"1", "help-string"=>"Priority of GlobalProtect gateway", "enum"=> [{"value"=>"0", "help-string"=>"Manual only"}, {"value"=>"1", "help-string"=>"Highest"}, {"value"=>"2", "help-string"=>"High"}, {"value"=>"3", "help-string"=>"Medium"}, {"value"=>"4", "help-string"=>"Low"}, {"value"=>"5", "help-string"=>"Lowest"}]}} # Region name def name prop_get('@name') end # Priority of GlobalProtect gateway def priority prop_get('priority') end # Priority of GlobalProtect gateway def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PriorityRule def priority_rule if @create_children @subclasses['priority-rule'] ||= PriorityRule.new(parent_instance: self, create_children: @create_children) else PriorityRule.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^[^;|`&'\"<>[:cntrl:]]+$", "help-string"=>"description of the gateway"}, "fqdn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"255", "regex"=>"^([$:/a-zA-Z0-9._-])+$", "help-string"=>"fqdn", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}, "manual"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"If this GlobalProtect gateway can be manually selected"}} # description of the gateway def name prop_get('@name') end # fqdn def fqdn prop_get('fqdn') end # fqdn def fqdn=(val) prop_set('fqdn', val) end # If this GlobalProtect gateway can be manually selected def manual prop_get('manual') end # If this GlobalProtect gateway can be manually selected def manual=(val) prop_set('manual', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={"cutoff-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "default"=>"5", "max"=>"10", "optional"=>"yes", "help-string"=>"Gateway discovery cutoff time in seconds"}} # Gateway discovery cutoff time in seconds def cutoff_time prop_get('cutoff-time') end # Gateway discovery cutoff time in seconds def cutoff_time=(val) prop_set('cutoff-time', val) end end # class External def external @subclasses['external'] ||= External.new(parent_instance: self, create_children: @create_children) end @props={} end # class Gateways def gateways @subclasses['gateways'] ||= Gateways.new(parent_instance: self, create_children: @create_children) end class InternalHostDetection < ConfigClass def has_multiple_values? false end def _section :'internal-host-detection' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Internal IPv4 address of a host", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"256", "help-string"=>"Host name of the IPv4 in DNS record", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}} # Internal IPv4 address of a host def ip_address prop_get('ip-address') end # Internal IPv4 address of a host def ip_address=(val) prop_set('ip-address', val) end # Host name of the IPv4 in DNS record def hostname prop_get('hostname') end # Host name of the IPv4 in DNS record def hostname=(val) prop_set('hostname', val) end end # class InternalHostDetection def internal_host_detection @subclasses['internal-host-detection'] ||= InternalHostDetection.new(parent_instance: self, create_children: @create_children) end class InternalHostDetectionV6 < ConfigClass def has_multiple_values? false end def _section :'internal-host-detection-v6' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Internal IPv6 address of a host", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"256", "help-string"=>"Host name of the IPv6 in DNS record", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}} # Internal IPv6 address of a host def ip_address prop_get('ip-address') end # Internal IPv6 address of a host def ip_address=(val) prop_set('ip-address', val) end # Host name of the IPv6 in DNS record def hostname prop_get('hostname') end # Host name of the IPv6 in DNS record def hostname=(val) prop_set('hostname', val) end end # class InternalHostDetectionV6 def internal_host_detection_v6 @subclasses['internal-host-detection-v6'] ||= InternalHostDetectionV6.new(parent_instance: self, create_children: @create_children) end class AgentUi < ConfigClass def has_multiple_values? false end def _section :'agent-ui' end class WelcomePage < ConfigClass def has_multiple_values? false end def _section :'welcome-page' end @props={"page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/response-page/global-protect-portal-custom-welcome-page/entry/@name", "#config/shared/response-page/global-protect-portal-custom-welcome-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-welcome-page/entry/@name"]}} def page prop_get('page') end def page=(val) prop_set('page', val) end end # class WelcomePage def welcome_page @subclasses['welcome-page'] ||= WelcomePage.new(parent_instance: self, create_children: @create_children) end @props={"passcode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "minlen"=>"6", "maxlen"=>"64", "help-string"=>"Passcode required for override"}, "uninstall-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Password to uninstall GlobalProtect app"}, "agent-user-override-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "default"=>"0", "help-string"=>"Agent user override duration in minutes"}, "max-agent-user-overrides"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "default"=>"0", "help-string"=>"Max agent user overrides"}} # Passcode required for override def passcode prop_get('passcode') end # Passcode required for override def passcode=(val) prop_set('passcode', val) end # Password to uninstall GlobalProtect app def uninstall_password prop_get('uninstall-password') end # Password to uninstall GlobalProtect app def uninstall_password=(val) prop_set('uninstall-password', val) end # Agent user override duration in minutes def agent_user_override_timeout prop_get('agent-user-override-timeout') end # Agent user override duration in minutes def agent_user_override_timeout=(val) prop_set('agent-user-override-timeout', val) end # Max agent user overrides def max_agent_user_overrides prop_get('max-agent-user-overrides') end # Max agent user overrides def max_agent_user_overrides=(val) prop_set('max-agent-user-overrides', val) end end # class AgentUi def agent_ui @subclasses['agent-ui'] ||= AgentUi.new(parent_instance: self, create_children: @create_children) end class HipCollection < ConfigClass def has_multiple_values? false end def _section :'hip-collection' end class Exclusion < ConfigClass def has_multiple_values? false end def _section :'exclusion' end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/predefined/opswat_v4/Microsoft/category/entry[@name='$category_name']/vendor/entry[@name='$vendor_name']/product/entry/@name", "##/predefined/opswat_v4/Apple/category/entry[@name='$category_name']/vendor/entry[@name='$vendor_name']/product/entry/@name", "##/predefined/opswat_v4/Linux/category/entry[@name='$category_name']/vendor/entry[@name='$vendor_name']/product/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/predefined/opswat_v4/Microsoft/category/entry[@name='$category_name']/vendor/entry/@name", "##/predefined/opswat_v4/Apple/category/entry[@name='$category_name']/vendor/entry/@name", "##/predefined/opswat_v4/Linux/category/entry[@name='$category_name']/vendor/entry/@name"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/opswat_v4/Microsoft/category/entry/@name[. != 'host-info']", "##/predefined/opswat_v4/Apple/category/entry/@name[. != 'host-info']", "##/predefined/opswat_v4/Linux/category/entry/@name[. != 'host-info']"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end @props={} end # class Exclusion def exclusion @subclasses['exclusion'] ||= Exclusion.new(parent_instance: self, create_children: @create_children) end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Windows < ConfigClass def has_multiple_values? false end def _section :'windows' end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023", "max-count"=>"1024"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end @props={} end # class Windows def windows @subclasses['windows'] ||= Windows.new(parent_instance: self, create_children: @create_children) end class MacOs < ConfigClass def has_multiple_values? false end def _section :'mac-os' end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023", "max-count"=>"1024"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end @props={} end # class MacOs def mac_os @subclasses['mac-os'] ||= MacOs.new(parent_instance: self, create_children: @create_children) end class Linux < ConfigClass def has_multiple_values? false end def _section :'linux' end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023", "max-count"=>"1024"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end @props={} end # class Linux def linux @subclasses['linux'] ||= Linux.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "max-wait-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"10", "max"=>"60", "default"=>"20", "optional"=>"yes", "help-string"=>"Max Wait Time (Sec)"}, "collect-hip-data"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Collect HIP Data"}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Max Wait Time (Sec) def max_wait_time prop_get('max-wait-time') end # Max Wait Time (Sec) def max_wait_time=(val) prop_set('max-wait-time', val) end # Collect HIP Data def collect_hip_data prop_get('collect-hip-data') end # Collect HIP Data def collect_hip_data=(val) prop_set('collect-hip-data', val) end end # class HipCollection def hip_collection @subclasses['hip-collection'] ||= HipCollection.new(parent_instance: self, create_children: @create_children) end class ThirdPartyVpnClients < XML::ConfigClass def has_multiple_values? true end def _section :'third-party-vpn-clients' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ThirdPartyVpnClients def third_party_vpn_clients if @create_children @subclasses['third-party-vpn-clients'] ||= ThirdPartyVpnClients.new(parent_instance: self, create_children: @create_children) else ThirdPartyVpnClients.new(parent_instance: self) end end class AgentConfig < ConfigClass def has_multiple_values? false end def _section :'agent-config' end @props={} end # class AgentConfig def agent_config @subclasses['agent-config'] ||= AgentConfig.new(parent_instance: self, create_children: @create_children) end class GpAppConfig < ConfigClass def has_multiple_values? false end def _section :'gp-app-config' end class Config < XML::ConfigClass def has_multiple_values? true end def _section :'config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Value < XML::ConfigClass def has_multiple_values? true end def _section :'value' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"174762", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dynamic-schema/gp-app-config/config/entry[@name='$config_name']/value/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Value def value if @create_children @subclasses['value'] ||= Value.new(parent_instance: self, create_children: @create_children) else Value.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dynamic-schema/gp-app-config/config/entry/@name"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Config def config if @create_children @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) else Config.new(parent_instance: self) end end @props={} end # class GpAppConfig def gp_app_config @subclasses['gp-app-config'] ||= GpAppConfig.new(parent_instance: self, create_children: @create_children) end class Os < XML::ConfigClass def has_multiple_values? true end def _section :'os' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Os def os if @create_children @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) else Os.new(parent_instance: self) end end class ClientCertificate < XML::ConfigClass def has_multiple_values? true end def _section :'client-certificate' end @props={"local"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Select Client Certificate", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "scep"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/scep/entry/@name", "#config/shared/scep/entry/@name"]}} # Select Client Certificate def local prop_get('local') end # Select Client Certificate def local=(val) prop_set('local', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end end # class ClientCertificate def client_certificate if @create_children @subclasses['client-certificate'] ||= ClientCertificate.new(parent_instance: self, create_children: @create_children) else ClientCertificate.new(parent_instance: self) end end class AuthenticationOverride < ConfigClass def has_multiple_values? false end def _section :'authentication-override' end class AcceptCookie < ConfigClass def has_multiple_values? false end def _section :'accept-cookie' end class CookieLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'cookie-lifetime' end @props={"lifetime-in-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"365", "default"=>"365", "optional"=>"yes", "help-string"=>"Cookie lifetime in days", "uiHint-fieldLabel"=>"Days"}, "lifetime-in-hours"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"72", "default"=>"24", "optional"=>"yes", "help-string"=>"Cookie lifetime in hours", "uiHint-fieldLabel"=>"Hours"}, "lifetime-in-minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"59", "default"=>"5", "optional"=>"yes", "help-string"=>"Cookie lifetime in minutes", "uiHint-fieldLabel"=>"Minutes"}} # Cookie lifetime in days def lifetime_in_days prop_get('lifetime-in-days') end # Cookie lifetime in days def lifetime_in_days=(val) prop_set('lifetime-in-days', val) end # Cookie lifetime in hours def lifetime_in_hours prop_get('lifetime-in-hours') end # Cookie lifetime in hours def lifetime_in_hours=(val) prop_set('lifetime-in-hours', val) end # Cookie lifetime in minutes def lifetime_in_minutes prop_get('lifetime-in-minutes') end # Cookie lifetime in minutes def lifetime_in_minutes=(val) prop_set('lifetime-in-minutes', val) end end # class CookieLifetime def cookie_lifetime if @create_children @subclasses['cookie-lifetime'] ||= CookieLifetime.new(parent_instance: self, create_children: @create_children) else CookieLifetime.new(parent_instance: self) end end @props={} end # class AcceptCookie def accept_cookie @subclasses['accept-cookie'] ||= AcceptCookie.new(parent_instance: self, create_children: @create_children) end @props={"generate-cookie"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Generate cookie for authentication override"}, "cookie-encrypt-decrypt-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Certificate to Encrypt/Decrypt Cookie", "maxlen"=>"255", "uiHint-fieldLabel"=>"Certificate to Encrypt/Decrypt cookie", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # Generate cookie for authentication override def generate_cookie prop_get('generate-cookie') end # Generate cookie for authentication override def generate_cookie=(val) prop_set('generate-cookie', val) end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert prop_get('cookie-encrypt-decrypt-cert') end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert=(val) prop_set('cookie-encrypt-decrypt-cert', val) end end # class AuthenticationOverride def authentication_override @subclasses['authentication-override'] ||= AuthenticationOverride.new(parent_instance: self, create_children: @create_children) end @props={"save-user-credentials"=> {"node-type"=>"element", "type"=>"enum", "default"=>"1", "optional"=>"yes", "help-string"=>"Save User Credentials", "enum"=> [{"value"=>"0", "help-string"=>"No"}, {"value"=>"1", "help-string"=>"Yes"}, {"value"=>"2", "help-string"=>"Save Username Only"}, {"value"=>"3", "help-string"=>"Only with User Fingerprint"}]}, "portal-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Portal Authentication OTP"}, "internal-gateway-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Internal Gateway Authentication OTP"}, "auto-discovery-external-gateway-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Auto Discovery External Gateway Authentication OTP"}, "manual-only-gateway-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Manual Only External Gateway Authentication OTP"}, "@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect client configurations"}, "refresh-config"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Enable portal config refresh"}, "mdm-address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "optional"=>"yes", "help-string"=>"IP address or hostname for GlobalProtect MDM server"}, "mdm-enrollment-port"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"443", "help-string"=>"MDM enrollment port", "enum"=>[{"value"=>"443"}, {"value"=>"7443"}, {"value"=>"8443"}]}} # Save User Credentials def save_user_credentials prop_get('save-user-credentials') end # Save User Credentials def save_user_credentials=(val) prop_set('save-user-credentials', val) end # Portal Authentication OTP def portal_2fa prop_get('portal-2fa') end # Portal Authentication OTP def portal_2fa=(val) prop_set('portal-2fa', val) end # Internal Gateway Authentication OTP def internal_gateway_2fa prop_get('internal-gateway-2fa') end # Internal Gateway Authentication OTP def internal_gateway_2fa=(val) prop_set('internal-gateway-2fa', val) end # Auto Discovery External Gateway Authentication OTP def auto_discovery_external_gateway_2fa prop_get('auto-discovery-external-gateway-2fa') end # Auto Discovery External Gateway Authentication OTP def auto_discovery_external_gateway_2fa=(val) prop_set('auto-discovery-external-gateway-2fa', val) end # Manual Only External Gateway Authentication OTP def manual_only_gateway_2fa prop_get('manual-only-gateway-2fa') end # Manual Only External Gateway Authentication OTP def manual_only_gateway_2fa=(val) prop_set('manual-only-gateway-2fa', val) end # GlobalProtect client configurations def name prop_get('@name') end # Enable portal config refresh def refresh_config prop_get('refresh-config') end # Enable portal config refresh def refresh_config=(val) prop_set('refresh-config', val) end # IP address or hostname for GlobalProtect MDM server def mdm_address prop_get('mdm-address') end # IP address or hostname for GlobalProtect MDM server def mdm_address=(val) prop_set('mdm-address', val) end # MDM enrollment port def mdm_enrollment_port prop_get('mdm-enrollment-port') end # MDM enrollment port def mdm_enrollment_port=(val) prop_set('mdm-enrollment-port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Configs def configs if @create_children @subclasses['configs'] ||= Configs.new(parent_instance: self, create_children: @create_children) else Configs.new(parent_instance: self) end end @props={"agent-user-override-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "skip-fips-chk"=>"yes", "minlen"=>"1", "maxlen"=>"4", "help-string"=>"Agent user override ticket key"}} # Agent user override ticket key def agent_user_override_key prop_get('agent-user-override-key') end # Agent user override ticket key def agent_user_override_key=(val) prop_set('agent-user-override-key', val) end end # class ClientConfig def client_config @subclasses['client-config'] ||= ClientConfig.new(parent_instance: self, create_children: @create_children) end class SatelliteConfig < ConfigClass def has_multiple_values? false end def _section :'satellite-config' end class RootCa < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"255"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCa def root_ca if @create_children @subclasses['root-ca'] ||= RootCa.new(parent_instance: self, create_children: @create_children) else RootCa.new(parent_instance: self) end end class ClientCertificate < XML::ConfigClass def has_multiple_values? true end def _section :'client-certificate' end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"issuing-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Issuing certificate to issue GlobalProtect satellite certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "ocsp-responder"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"OCSP responder", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ocsp-responder/entry/@name|#config/shared/ocsp-responder/entry/@name"]}, "certificate-life-time"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"7", "max"=>"365", "default"=>"7", "help-string"=> "Issued GlobalProtect satellite certificate life time in days"}, "certificate-renewal-period"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"3", "max"=>"30", "default"=>"3", "help-string"=> "GlobalProtect satellite certificate renewal period in days"}} # Issuing certificate to issue GlobalProtect satellite certificate def issuing_certificate prop_get('issuing-certificate') end # Issuing certificate to issue GlobalProtect satellite certificate def issuing_certificate=(val) prop_set('issuing-certificate', val) end # OCSP responder def ocsp_responder prop_get('ocsp-responder') end # OCSP responder def ocsp_responder=(val) prop_set('ocsp-responder', val) end # Issued GlobalProtect satellite certificate life time in days def certificate_life_time prop_get('certificate-life-time') end # Issued GlobalProtect satellite certificate life time in days def certificate_life_time=(val) prop_set('certificate-life-time', val) end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period prop_get('certificate-renewal-period') end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period=(val) prop_set('certificate-renewal-period', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/scep/entry/@name", "#config/shared/scep/entry/@name"]}, "certificate-renewal-period"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"3", "max"=>"30", "default"=>"3", "help-string"=> "GlobalProtect satellite certificate renewal period in days"}} def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period prop_get('certificate-renewal-period') end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period=(val) prop_set('certificate-renewal-period', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class ClientCertificate def client_certificate if @create_children @subclasses['client-certificate'] ||= ClientCertificate.new(parent_instance: self, create_children: @create_children) else ClientCertificate.new(parent_instance: self) end end class Configs < XML::ConfigClass def has_multiple_values? true end def _section :'configs' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "regex"=>"^[0-9A-F]+$", "help-string"=>"GlobalProtect satellite pan device serial number"}} # GlobalProtect satellite pan device serial number def member prop_get('member') end # GlobalProtect satellite pan device serial number def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Gateways < XML::ConfigClass def has_multiple_values? true end def _section :'gateways' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv4", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv6", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 def ipv4 prop_get('ipv4') end # IPv4 def ipv4=(val) prop_set('ipv4', val) end # IPv6 def ipv6 prop_get('ipv6') end # IPv6 def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"description of the gateway"}, "fqdn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"255", "regex"=>"^([$:/a-zA-Z0-9._-])+$", "help-string"=>"fqdn", "autocomplete"=>"yes", "memberof"=>["#myentry(template)/variable/entry[type/fqdn]/@name"]}, "ipv6-preferred"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"IPv6 Preferred"}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"25", "help-string"=>"Priority of GlobalProtect gateway"}} # description of the gateway def name prop_get('@name') end # fqdn def fqdn prop_get('fqdn') end # fqdn def fqdn=(val) prop_set('fqdn', val) end # IPv6 Preferred def ipv6_preferred prop_get('ipv6-preferred') end # IPv6 Preferred def ipv6_preferred=(val) prop_set('ipv6-preferred', val) end # Priority of GlobalProtect gateway def priority prop_get('priority') end # Priority of GlobalProtect gateway def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gateways def gateways if @create_children @subclasses['gateways'] ||= Gateways.new(parent_instance: self, create_children: @create_children) else Gateways.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect satellite config rule"}, "config-refresh-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"48", "default"=>"24", "help-string"=> "GlobalProtect satellite configuration refresh interval in hours"}} # GlobalProtect satellite config rule def name prop_get('@name') end # GlobalProtect satellite configuration refresh interval in hours def config_refresh_interval prop_get('config-refresh-interval') end # GlobalProtect satellite configuration refresh interval in hours def config_refresh_interval=(val) prop_set('config-refresh-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Configs def configs if @create_children @subclasses['configs'] ||= Configs.new(parent_instance: self, create_children: @create_children) else Configs.new(parent_instance: self) end end @props={} end # class SatelliteConfig def satellite_config @subclasses['satellite-config'] ||= SatelliteConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [ 0-9a-zA-Z._-]"}} # alphanumeric string begin with letter: [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortal def global_protect_portal if @create_children @subclasses['global-protect-portal'] ||= GlobalProtectPortal.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortal.new(parent_instance: self) end end class GlobalProtectGateway < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RemoteUserTunnelConfigs < XML::ConfigClass def has_multiple_values? true end def _section :'remote-user-tunnel-configs' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class AuthenticationOverride < ConfigClass def has_multiple_values? false end def _section :'authentication-override' end class AcceptCookie < ConfigClass def has_multiple_values? false end def _section :'accept-cookie' end class CookieLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'cookie-lifetime' end @props={"lifetime-in-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"365", "default"=>"365", "optional"=>"yes", "help-string"=>"Cookie lifetime in days", "uiHint-fieldLabel"=>"Days"}, "lifetime-in-hours"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"72", "default"=>"24", "optional"=>"yes", "help-string"=>"Cookie lifetime in hours", "uiHint-fieldLabel"=>"Hours"}, "lifetime-in-minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"59", "default"=>"5", "optional"=>"yes", "help-string"=>"Cookie lifetime in minutes", "uiHint-fieldLabel"=>"Minutes"}} # Cookie lifetime in days def lifetime_in_days prop_get('lifetime-in-days') end # Cookie lifetime in days def lifetime_in_days=(val) prop_set('lifetime-in-days', val) end # Cookie lifetime in hours def lifetime_in_hours prop_get('lifetime-in-hours') end # Cookie lifetime in hours def lifetime_in_hours=(val) prop_set('lifetime-in-hours', val) end # Cookie lifetime in minutes def lifetime_in_minutes prop_get('lifetime-in-minutes') end # Cookie lifetime in minutes def lifetime_in_minutes=(val) prop_set('lifetime-in-minutes', val) end end # class CookieLifetime def cookie_lifetime if @create_children @subclasses['cookie-lifetime'] ||= CookieLifetime.new(parent_instance: self, create_children: @create_children) else CookieLifetime.new(parent_instance: self) end end @props={} end # class AcceptCookie def accept_cookie @subclasses['accept-cookie'] ||= AcceptCookie.new(parent_instance: self, create_children: @create_children) end @props={"generate-cookie"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Generate cookie for authentication override"}, "cookie-encrypt-decrypt-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Certificate to Encrypt/Decrypt Cookie", "maxlen"=>"255", "uiHint-fieldLabel"=>"Certificate to Encrypt/Decrypt cookie", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # Generate cookie for authentication override def generate_cookie prop_get('generate-cookie') end # Generate cookie for authentication override def generate_cookie=(val) prop_set('generate-cookie', val) end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert prop_get('cookie-encrypt-decrypt-cert') end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert=(val) prop_set('cookie-encrypt-decrypt-cert', val) end end # class AuthenticationOverride def authentication_override @subclasses['authentication-override'] ||= AuthenticationOverride.new(parent_instance: self, create_children: @create_children) end class Os < XML::ConfigClass def has_multiple_values? true end def _section :'os' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Os def os if @create_children @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) else Os.new(parent_instance: self) end end class SourceAddress < ConfigClass def has_multiple_values? false end def _section :'source-address' end class Region < XML::ConfigClass def has_multiple_values? true end def _section :'region' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#myentry(vsys)/region/entry/@name", "#config/shared/region/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Region def region if @create_children @subclasses['region'] ||= Region.new(parent_instance: self, create_children: @create_children) else Region.new(parent_instance: self) end end class IpAddress < XML::ConfigClass def has_multiple_values? true end def _section :'ip-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpAddress def ip_address if @create_children @subclasses['ip-address'] ||= IpAddress.new(parent_instance: self, create_children: @create_children) else IpAddress.new(parent_instance: self) end end @props={} end # class SourceAddress def source_address @subclasses['source-address'] ||= SourceAddress.new(parent_instance: self, create_children: @create_children) end class DnsServer < XML::ConfigClass def has_multiple_values? true end def _section :'dns-server' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"40", "help-string"=>"DNS server for client"}} # DNS server for client def member prop_get('member') end # DNS server for client def member=(val) prop_set('member', val) end end # class DnsServer def dns_server if @create_children @subclasses['dns-server'] ||= DnsServer.new(parent_instance: self, create_children: @create_children) else DnsServer.new(parent_instance: self) end end class DnsSuffix < XML::ConfigClass def has_multiple_values? true end def _section :'dns-suffix' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^(([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]).)*([A-Za-z0-9]|[A-Za-z0-9-]*[A-Za-z0-9])+$", "help-string"=>"DNS suffix for client"}} # DNS suffix for client def member prop_get('member') end # DNS suffix for client def member=(val) prop_set('member', val) end end # class DnsSuffix def dns_suffix if @create_children @subclasses['dns-suffix'] ||= DnsSuffix.new(parent_instance: self, create_children: @create_children) else DnsSuffix.new(parent_instance: self) end end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class SplitTunneling < ConfigClass def has_multiple_values? false end def _section :'split-tunneling' end class AccessRoute < XML::ConfigClass def has_multiple_values? true end def _section :'access-route' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask]/@name", "##/shared/address-group/entry[static]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AccessRoute def access_route if @create_children @subclasses['access-route'] ||= AccessRoute.new(parent_instance: self, create_children: @create_children) else AccessRoute.new(parent_instance: self) end end class ExcludeAccessRoute < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-access-route' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask]/@name", "##/shared/address-group/entry[static]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeAccessRoute def exclude_access_route if @create_children @subclasses['exclude-access-route'] ||= ExcludeAccessRoute.new(parent_instance: self, create_children: @create_children) else ExcludeAccessRoute.new(parent_instance: self) end end class IncludeApplications < XML::ConfigClass def has_multiple_values? true end def _section :'include-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"511", "max-count"=>"200"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeApplications def include_applications if @create_children @subclasses['include-applications'] ||= IncludeApplications.new(parent_instance: self, create_children: @create_children) else IncludeApplications.new(parent_instance: self) end end class IncludeDomains < ConfigClass def has_multiple_values? false end def _section :'include-domains' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ports < XML::ConfigClass def has_multiple_values? true end def _section :'ports' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ports def ports if @create_children @subclasses['ports'] ||= Ports.new(parent_instance: self, create_children: @create_children) else Ports.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^\\*?([:/a-zA-Z0-9._\\.\\-])+$", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={} end # class IncludeDomains def include_domains @subclasses['include-domains'] ||= IncludeDomains.new(parent_instance: self, create_children: @create_children) end class ExcludeApplications < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"511", "max-count"=>"200"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeApplications def exclude_applications if @create_children @subclasses['exclude-applications'] ||= ExcludeApplications.new(parent_instance: self, create_children: @create_children) else ExcludeApplications.new(parent_instance: self) end end class ExcludeDomains < ConfigClass def has_multiple_values? false end def _section :'exclude-domains' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ports < XML::ConfigClass def has_multiple_values? true end def _section :'ports' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ports def ports if @create_children @subclasses['ports'] ||= Ports.new(parent_instance: self, create_children: @create_children) else Ports.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^\\*?([:/a-zA-Z0-9._\\.\\-])+$", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={} end # class ExcludeDomains def exclude_domains @subclasses['exclude-domains'] ||= ExcludeDomains.new(parent_instance: self, create_children: @create_children) end @props={} end # class SplitTunneling def split_tunneling @subclasses['split-tunneling'] ||= SplitTunneling.new(parent_instance: self, create_children: @create_children) end class AuthenticationServerIpPool < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-server-ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationServerIpPool def authentication_server_ip_pool if @create_children @subclasses['authentication-server-ip-pool'] ||= AuthenticationServerIpPool.new(parent_instance: self, create_children: @create_children) else AuthenticationServerIpPool.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=> "GlobalProtect gateway remote user tunnel configuration name"}, "no-direct-access-to-local-network"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"No direct access to local network"}, "retrieve-framed-ip-address"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"retrieve framed ip address"}} # GlobalProtect gateway remote user tunnel configuration name def name prop_get('@name') end # No direct access to local network def no_direct_access_to_local_network prop_get('no-direct-access-to-local-network') end # No direct access to local network def no_direct_access_to_local_network=(val) prop_set('no-direct-access-to-local-network', val) end # retrieve framed ip address def retrieve_framed_ip_address prop_get('retrieve-framed-ip-address') end # retrieve framed ip address def retrieve_framed_ip_address=(val) prop_set('retrieve-framed-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RemoteUserTunnelConfigs def remote_user_tunnel_configs if @create_children @subclasses['remote-user-tunnel-configs'] ||= RemoteUserTunnelConfigs.new(parent_instance: self, create_children: @create_children) else RemoteUserTunnelConfigs.new(parent_instance: self) end end class ClientAuth < XML::ConfigClass def has_multiple_values? true end def _section :'client-auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect client authentication name"}, "os"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Any", "help-string"=>"Client OS", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"Any"}, {"value"=>"Satellite"}, {"value"=>"X-Auth", "help-string"=>"Third party IPSec clients"}]}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"authentication profile used for this GlobalProtect", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "auto-retrieve-passcode"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "Automatically retrieve passcode from SoftToken application"}, "username-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Username", "optional"=>"yes", "help-string"=>"Username Label"}, "password-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Password", "optional"=>"yes", "help-string"=>"Password Label"}, "authentication-message"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"256", "default"=>"Enter login credentials", "optional"=>"yes", "help-string"=>"Authentication Message"}, "user-credential-or-client-cert-required"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no", "optional"=>"yes", "help-string"=> "Allow Authentication with User Credentials OR Client Certificate", "enum"=> [{"value"=>"no", "help-string"=>"No (User Credentials AND Client Certificate Required)"}, {"value"=>"yes", "help-string"=> "Yes (User Credentials OR Client Certificate Required)"}]}} # GlobalProtect client authentication name def name prop_get('@name') end # Client OS def os prop_get('os') end # Client OS def os=(val) prop_set('os', val) end # authentication profile used for this GlobalProtect def authentication_profile prop_get('authentication-profile') end # authentication profile used for this GlobalProtect def authentication_profile=(val) prop_set('authentication-profile', val) end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode prop_get('auto-retrieve-passcode') end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode=(val) prop_set('auto-retrieve-passcode', val) end # Username Label def username_label prop_get('username-label') end # Username Label def username_label=(val) prop_set('username-label', val) end # Password Label def password_label prop_get('password-label') end # Password Label def password_label=(val) prop_set('password-label', val) end # Authentication Message def authentication_message prop_get('authentication-message') end # Authentication Message def authentication_message=(val) prop_set('authentication-message', val) end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required prop_get('user-credential-or-client-cert-required') end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required=(val) prop_set('user-credential-or-client-cert-required', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientAuth def client_auth if @create_children @subclasses['client-auth'] ||= ClientAuth.new(parent_instance: self, create_children: @create_children) else ClientAuth.new(parent_instance: self) end end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"IPv4 addresses", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/$ifname/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 addresses def ipv4 prop_get('ipv4') end # IPv4 addresses def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IPv4 address def ipv4 prop_get('ipv4') end # Floating IPv4 address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class SecurityRestrictions < ConfigClass def has_multiple_values? false end def _section :'security-restrictions' end class SourceIpEnforcement < ConfigClass def has_multiple_values? false end def _section :'source-ip-enforcement' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end @props={"source-ipv4-netmask"=> {"node-type"=>"element", "help-string"=>"Source IPv4 Netmask", "type"=>"rangedint", "max"=>"32", "min"=>"0"}, "source-ipv6-netmask"=> {"node-type"=>"element", "help-string"=>"Source IPv6 Netmask", "type"=>"rangedint", "max"=>"128", "min"=>"0"}} # Source IPv4 Netmask def source_ipv4_netmask prop_get('source-ipv4-netmask') end # Source IPv4 Netmask def source_ipv4_netmask=(val) prop_set('source-ipv4-netmask', val) end # Source IPv6 Netmask def source_ipv6_netmask prop_get('source-ipv6-netmask') end # Source IPv6 Netmask def source_ipv6_netmask=(val) prop_set('source-ipv6-netmask', val) end end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Allow Authentication Cookie Usage Only"}} # Allow Authentication Cookie Usage Only def enable prop_get('enable') end # Allow Authentication Cookie Usage Only def enable=(val) prop_set('enable', val) end end # class SourceIpEnforcement def source_ip_enforcement @subclasses['source-ip-enforcement'] ||= SourceIpEnforcement.new(parent_instance: self, create_children: @create_children) end @props={"disallow-automatic-restoration"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disallow Automatic Restoration of SSL VPN"}} # Disallow Automatic Restoration of SSL VPN def disallow_automatic_restoration prop_get('disallow-automatic-restoration') end # Disallow Automatic Restoration of SSL VPN def disallow_automatic_restoration=(val) prop_set('disallow-automatic-restoration', val) end end # class SecurityRestrictions def security_restrictions @subclasses['security-restrictions'] ||= SecurityRestrictions.new(parent_instance: self, create_children: @create_children) end class Roles < XML::ConfigClass def has_multiple_values? true end def _section :'roles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ClientMaxBandwidth < ConfigClass def has_multiple_values? false end def _section :'client-max-bandwidth' end @props={"client-to-gateway"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"1", "help-string"=>"client's max sending bandwidth through VPN in mbps"}, "gateway-to-client"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"1", "help-string"=>"client's max receiving bandwidth through VPN in mbps"}} # client's max sending bandwidth through VPN in mbps def client_to_gateway prop_get('client-to-gateway') end # client's max sending bandwidth through VPN in mbps def client_to_gateway=(val) prop_set('client-to-gateway', val) end # client's max receiving bandwidth through VPN in mbps def gateway_to_client prop_get('gateway-to-client') end # client's max receiving bandwidth through VPN in mbps def gateway_to_client=(val) prop_set('gateway-to-client', val) end end # class ClientMaxBandwidth def client_max_bandwidth @subclasses['client-max-bandwidth'] ||= ClientMaxBandwidth.new(parent_instance: self, create_children: @create_children) end class LoginLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'login-lifetime' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"43200", "min"=>"120"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"720", "min"=>"2"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"30", "min"=>"1", "default"=>"30"}} # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class LoginLifetime def login_lifetime if @create_children @subclasses['login-lifetime'] ||= LoginLifetime.new(parent_instance: self, create_children: @create_children) else LoginLifetime.new(parent_instance: self) end end class InactivityLogout < XML::ConfigClass def has_multiple_values? true end def _section :'inactivity-logout' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"43200", "min"=>"120"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"720", "min"=>"2", "default"=>"3"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"30", "min"=>"1"}} # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class InactivityLogout def inactivity_logout if @create_children @subclasses['inactivity-logout'] ||= InactivityLogout.new(parent_instance: self, create_children: @create_children) else InactivityLogout.new(parent_instance: self) end end class DisconnectOnIdle < XML::ConfigClass def has_multiple_values? true end def _section :'disconnect-on-idle' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"5", "max"=>"43200", "default"=>"180", "help-string"=>"specify disconnect on idle in minutes"}} # specify disconnect on idle in minutes def minutes prop_get('minutes') end # specify disconnect on idle in minutes def minutes=(val) prop_set('minutes', val) end end # class DisconnectOnIdle def disconnect_on_idle if @create_children @subclasses['disconnect-on-idle'] ||= DisconnectOnIdle.new(parent_instance: self, create_children: @create_children) else DisconnectOnIdle.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"tunnel traffic group", "enum"=> [{"value"=>"default", "help-string"=>"the default group of GlobalProtect gateway users"}]}} # tunnel traffic group def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Roles def roles if @create_children @subclasses['roles'] ||= Roles.new(parent_instance: self, create_children: @create_children) else Roles.new(parent_instance: self) end end class HipNotification < XML::ConfigClass def has_multiple_values? true end def _section :'hip-notification' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MatchMessage < ConfigClass def has_multiple_values? false end def _section :'match-message' end @props={"include-app-list"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Whether include matched application list in message", "uiHint-fieldLabel"=>"Include Mobile App List"}, "show-notification-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"system-tray-balloon", "help-string"=>"Show notification as", "enum"=>[{"value"=>"system-tray-balloon"}, {"value"=>"pop-up-message"}]}, "message"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"10239", "help-string"=>"Matched message"}} # Whether include matched application list in message def include_app_list prop_get('include-app-list') end # Whether include matched application list in message def include_app_list=(val) prop_set('include-app-list', val) end # Show notification as def show_notification_as prop_get('show-notification-as') end # Show notification as def show_notification_as=(val) prop_set('show-notification-as', val) end # Matched message def message prop_get('message') end # Matched message def message=(val) prop_set('message', val) end end # class MatchMessage def match_message @subclasses['match-message'] ||= MatchMessage.new(parent_instance: self, create_children: @create_children) end class NotMatchMessage < ConfigClass def has_multiple_values? false end def _section :'not-match-message' end @props={"show-notification-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"system-tray-balloon", "help-string"=>"Show notification as", "enum"=>[{"value"=>"system-tray-balloon"}, {"value"=>"pop-up-message"}]}, "message"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"10239", "help-string"=>"Not matched message"}} # Show notification as def show_notification_as prop_get('show-notification-as') end # Show notification as def show_notification_as=(val) prop_set('show-notification-as', val) end # Not matched message def message prop_get('message') end # Not matched message def message=(val) prop_set('message', val) end end # class NotMatchMessage def not_match_message @subclasses['not-match-message'] ||= NotMatchMessage.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"hip object name", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "##/shared/profiles/hip-profiles/entry/@name", "#myentry(vsys)/profiles/hip-objects/entry/@name", "#config/shared/profiles/hip-objects/entry/@name", "##/predefined/profiles/hip-objects/entry/@name", "##/shared/profiles/hip-objects/entry/@name"]}} # hip object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HipNotification def hip_notification if @create_children @subclasses['hip-notification'] ||= HipNotification.new(parent_instance: self, create_children: @create_children) else HipNotification.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"tunnel interface or name"}, "remote-user-tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"GlobalProtect user tunnel", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/tunnel/global-protect-gateway/entry/tunnel-interface", "#myentry(devices)/network/tunnel/global-protect-gateway/entry/tunnel-interface"]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "satellite-tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"GlobalProtect satellite tunnel", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/tunnel/global-protect-site-to-site/entry/tunnel-interface", "#myentry(devices)/network/tunnel/global-protect-site-to-site/entry/tunnel-interface"]}, "tunnel-mode"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Tunnel mode"}, "block-quarantined-devices"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Block login for quarantined devices"}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/profiles/entry/@name", "#myentry(vsys)/log-settings/profiles/entry/@name"]}} # tunnel interface or name def name prop_get('@name') end # GlobalProtect user tunnel def remote_user_tunnel prop_get('remote-user-tunnel') end # GlobalProtect user tunnel def remote_user_tunnel=(val) prop_set('remote-user-tunnel', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # GlobalProtect satellite tunnel def satellite_tunnel prop_get('satellite-tunnel') end # GlobalProtect satellite tunnel def satellite_tunnel=(val) prop_set('satellite-tunnel', val) end # Tunnel mode def tunnel_mode prop_get('tunnel-mode') end # Tunnel mode def tunnel_mode=(val) prop_set('tunnel-mode', val) end # Block login for quarantined devices def block_quarantined_devices prop_get('block-quarantined-devices') end # Block login for quarantined devices def block_quarantined_devices=(val) prop_set('block-quarantined-devices', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectGateway def global_protect_gateway if @create_children @subclasses['global-protect-gateway'] ||= GlobalProtectGateway.new(parent_instance: self, create_children: @create_children) else GlobalProtectGateway.new(parent_instance: self) end end class GlobalProtectMdm < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-mdm' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RootCa < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=>{"string"=>{"maxlen"=>"255"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCa def root_ca if @create_children @subclasses['root-ca'] ||= RootCa.new(parent_instance: self, create_children: @create_children) else RootCa.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"GlobalProtect MDM server name"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "host"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$a-zA-Z0-9._:-])+$", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"IP address or hostname for GlobalProtect MDM server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template)/variable/entry[type/ip-netmask]/@name", "#myentry(template)/variable/entry[type/fqdn]/@name"]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535", "default"=>"5008", "help-string"=>"GlobalProtect MDM server listening port"}, "client-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"SSL client certificate", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # GlobalProtect MDM server name def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # IP address or hostname for GlobalProtect MDM server def host prop_get('host') end # IP address or hostname for GlobalProtect MDM server def host=(val) prop_set('host', val) end # GlobalProtect MDM server listening port def port prop_get('port') end # GlobalProtect MDM server listening port def port=(val) prop_set('port', val) end # SSL client certificate def client_certificate prop_get('client-certificate') end # SSL client certificate def client_certificate=(val) prop_set('client-certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectMdm def global_protect_mdm if @create_children @subclasses['global-protect-mdm'] ||= GlobalProtectMdm.new(parent_instance: self, create_children: @create_children) else GlobalProtectMdm.new(parent_instance: self) end end class ClientlessApp < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application name"}, "application-home-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([A-Za-z0-9_\\.~!\\*'\\(\\);:@=\\+\\$,/\\?#%\\&-]|\\[|\\])+$", "maxlen"=>"4095", "help-string"=>"Home URL of application"}, "description"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"Description for application"}, "app-icon"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"180000", "optional"=>"yes", "help-string"=>"application icon"}} # clientless vpn application name def name prop_get('@name') end # Home URL of application def application_home_url prop_get('application-home-url') end # Home URL of application def application_home_url=(val) prop_set('application-home-url', val) end # Description for application def description prop_get('description') end # Description for application def description=(val) prop_set('description', val) end # application icon def app_icon prop_get('app-icon') end # application icon def app_icon=(val) prop_set('app-icon', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessApp def clientless_app if @create_children @subclasses['clientless-app'] ||= ClientlessApp.new(parent_instance: self, create_children: @create_children) else ClientlessApp.new(parent_instance: self) end end class ClientlessAppGroup < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"200", "autocomplete"=>"yes", "memberof"=> ["#config/shared/global-protect/clientless-app/entry/@name", "#myentry(vsys)/global-protect/clientless-app/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application group name"}} # clientless vpn application group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessAppGroup def clientless_app_group if @create_children @subclasses['clientless-app-group'] ||= ClientlessAppGroup.new(parent_instance: self, create_children: @create_children) else ClientlessAppGroup.new(parent_instance: self) end end @props={} end # class GlobalProtect__36 def global_protect__36 @subclasses['global-protect__36'] ||= GlobalProtect__36.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"vsys name"}} # vsys name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"must be localhost.localdomain", "enum"=>[{"value"=>"localhost.localdomain"}]}} # must be localhost.localdomain def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Description"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Description def description prop_get('description') end # Description def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Template def template if @create_children @subclasses['template'] ||= Template.new(parent_instance: self, create_children: @create_children) else Template.new(parent_instance: self) end end class TemplateStack < XML::ConfigClass def has_multiple_values? true end def _section :'template-stack' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Variable < XML::ConfigClass def has_multiple_values? true end def _section :'variable' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"ip-netmask"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "enum"=>[{"value"=>"None"}]}}, "ip-range"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"iprangespec"=>{}, "enum"=>[{"value"=>"None"}]}}, "fqdn"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$"}, "enum"=>[{"value"=>"None"}]}}, "group-id"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"rangedint"=>{}, "enum"=>[{"value"=>"None"}]}}, "device-priority"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"255"}, "enum"=>[{"value"=>"None"}]}}, "device-id"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"1"}, "enum"=>[{"value"=>"None"}]}}, "interface"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"None"}]}}, "as-number"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "string"=>{"regex"=>"^[0-9]{1,5}\\.[0-9]{1,5}$", "maxlen"=>"11"}, "enum"=>[{"value"=>"None"}]}}, "qos-profile"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=>{"minlen"=>"1", "maxlen"=>"31", "regex"=>"^([0-9a-zA-Z._-])+$"}, "enum"=>[{"value"=>"None"}]}}, "egress-max"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"float"=>{"min"=>"0", "max"=>"60000"}, "enum"=>[{"value"=>"None"}]}}, "link-tag"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=>{"minlen"=>"1", "maxlen"=>"127"}, "enum"=>[{"value"=>"None"}]}}} def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end def group_id prop_get('group-id') end def group_id=(val) prop_set('group-id', val) end def device_priority prop_get('device-priority') end def device_priority=(val) prop_set('device-priority', val) end def device_id prop_get('device-id') end def device_id=(val) prop_set('device-id', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end def as_number prop_get('as-number') end def as_number=(val) prop_set('as-number', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def egress_max prop_get('egress-max') end def egress_max=(val) prop_set('egress-max', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "regex"=>"^\\$([a-zA-Z0-9._-])+$", "help-string"=>"Variables need to begin with '$'", "autocomplete"=>"yes", "memberof"=>[]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Description"}} # Variables need to begin with '$' def name prop_get('@name') end # Description def description prop_get('description') end # Description def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Variable def variable if @create_children @subclasses['variable'] ||= Variable.new(parent_instance: self, create_children: @create_children) else Variable.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "regex"=>"^[0-9A-Z]+$", "help-string"=>"device serial number", "autocomplete"=>"yes", "memberof"=>[]}} # device serial number def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Settings < ConfigClass def has_multiple_values? false end def _section :'settings' end @props={"default-vsys"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Default virtual system", "in-tpl-stack"=>"yes", "autocomplete"=>"yes", "memberof"=>["../../../config/devices/entry/vsys/entry/@name"]}} # Default virtual system def default_vsys prop_get('default-vsys') end # Default virtual system def default_vsys=(val) prop_set('default-vsys', val) end end # class Settings def settings @subclasses['settings'] ||= Settings.new(parent_instance: self, create_children: @create_children) end class Variable < XML::ConfigClass def has_multiple_values? true end def _section :'variable' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"ip-netmask"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "enum"=>[{"value"=>"None"}]}}, "ip-range"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"iprangespec"=>{}, "enum"=>[{"value"=>"None"}]}}, "fqdn"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$"}, "enum"=>[{"value"=>"None"}]}}, "group-id"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"rangedint"=>{}, "enum"=>[{"value"=>"None"}]}}, "device-priority"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"255"}, "enum"=>[{"value"=>"None"}]}}, "device-id"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"1"}, "enum"=>[{"value"=>"None"}]}}, "interface"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"string"=>{}, "enum"=>[{"value"=>"None"}]}}, "as-number"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "string"=>{"regex"=>"^[0-9]{1,5}\\.[0-9]{1,5}$", "maxlen"=>"11"}, "enum"=>[{"value"=>"None"}]}}, "qos-profile"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=>{"minlen"=>"1", "maxlen"=>"31", "regex"=>"^([0-9a-zA-Z._-])+$"}, "enum"=>[{"value"=>"None"}]}}, "egress-max"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"float"=>{"min"=>"0", "max"=>"60000"}, "enum"=>[{"value"=>"None"}]}}, "link-tag"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"string"=>{"minlen"=>"1", "maxlen"=>"127"}, "enum"=>[{"value"=>"None"}]}}} def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end def group_id prop_get('group-id') end def group_id=(val) prop_set('group-id', val) end def device_priority prop_get('device-priority') end def device_priority=(val) prop_set('device-priority', val) end def device_id prop_get('device-id') end def device_id=(val) prop_set('device-id', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end def as_number prop_get('as-number') end def as_number=(val) prop_set('as-number', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def egress_max prop_get('egress-max') end def egress_max=(val) prop_set('egress-max', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "regex"=>"^\\$([a-zA-Z0-9._-])+$", "help-string"=>"Variables need to begin with '$'"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Description"}} # Variables need to begin with '$' def name prop_get('@name') end # Description def description prop_get('description') end # Description def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Variable def variable if @create_children @subclasses['variable'] ||= Variable.new(parent_instance: self, create_children: @create_children) else Variable.new(parent_instance: self) end end class Templates < XML::ConfigClass def has_multiple_values? true end def _section :'templates' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"64", "help-string"=>"template", "autocomplete"=>"yes", "memberof"=>[]}} # template def member prop_get('member') end # template def member=(val) prop_set('member', val) end end # class Templates def templates if @create_children @subclasses['templates'] ||= Templates.new(parent_instance: self, create_children: @create_children) else Templates.new(parent_instance: self) end end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MgtConfig < ConfigClass def has_multiple_values? false end def _section :'mgt-config' end class PasswordComplexity < ConfigClass def has_multiple_values? false end def _section :'password-complexity' end class PasswordChange < ConfigClass def has_multiple_values? false end def _section :'password-change' end @props={"expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"365", "default"=>"0", "help-string"=>"Password expiry days"}, "expiration-warning-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password expiry warning period"}, "post-expiration-admin-login-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3", "default"=>"0", "help-string"=>"Password post-expiry admin login count"}, "post-expiration-grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password post-expiry grace period"}} # Password expiry days def expiration_period prop_get('expiration-period') end # Password expiry days def expiration_period=(val) prop_set('expiration-period', val) end # Password expiry warning period def expiration_warning_period prop_get('expiration-warning-period') end # Password expiry warning period def expiration_warning_period=(val) prop_set('expiration-warning-period', val) end # Password post-expiry admin login count def post_expiration_admin_login_count prop_get('post-expiration-admin-login-count') end # Password post-expiry admin login count def post_expiration_admin_login_count=(val) prop_set('post-expiration-admin-login-count', val) end # Password post-expiry grace period def post_expiration_grace_period prop_get('post-expiration-grace-period') end # Password post-expiry grace period def post_expiration_grace_period=(val) prop_set('post-expiration-grace-period', val) end end # class PasswordChange def password_change @subclasses['password-change'] ||= PasswordChange.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable minimal password complexity enforcement"}, "block-username-inclusion"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Block inclusion of username and it's reverse"}, "password-change-on-first-login"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Password must change on first time login"}, "minimum-length__5"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "type"=>"rangedint", "min"=>"6", "max"=>"15", "optional"=>"yes", "default"=>"6", "help-string"=>"Minimum password length"}, "minimum-length__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum password length"}, "minimum-uppercase-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum uppercase letters in the password"}, "minimum-lowercase-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum lowercase letters in the password"}, "minimum-numeric-letters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"Minimum numeric(0-9) letters in the password"}, "minimum-special-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "default"=>"0", "optional"=>"yes", "help-string"=> "Minimum special characters(non-alphanumeric) in the password"}, "block-repeated-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "default"=>"0", "optional"=>"yes", "help-string"=>"Block repeated characters count"}, "password-history-count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"150", "default"=>"0", "optional"=>"yes", "help-string"=>"Save password history for password changes"}, "new-password-differs-by-characters"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"15", "optional"=>"yes", "default"=>"0", "help-string"=>"New Password must differ by the count chars"}, "password-change-period-block"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"365", "optional"=>"yes", "default"=>"0", "help-string"=>"Password change block period"}} # Enable minimal password complexity enforcement def enabled prop_get('enabled') end # Enable minimal password complexity enforcement def enabled=(val) prop_set('enabled', val) end # Block inclusion of username and it's reverse def block_username_inclusion prop_get('block-username-inclusion') end # Block inclusion of username and it's reverse def block_username_inclusion=(val) prop_set('block-username-inclusion', val) end # Password must change on first time login def password_change_on_first_login prop_get('password-change-on-first-login') end # Password must change on first time login def password_change_on_first_login=(val) prop_set('password-change-on-first-login', val) end # Minimum password length def minimum_length__5 prop_get('minimum-length__5') end # Minimum password length def minimum_length__5=(val) prop_set('minimum-length__5', val) end # Minimum password length def minimum_length__6 prop_get('minimum-length__6') end # Minimum password length def minimum_length__6=(val) prop_set('minimum-length__6', val) end # Minimum uppercase letters in the password def minimum_uppercase_letters prop_get('minimum-uppercase-letters') end # Minimum uppercase letters in the password def minimum_uppercase_letters=(val) prop_set('minimum-uppercase-letters', val) end # Minimum lowercase letters in the password def minimum_lowercase_letters prop_get('minimum-lowercase-letters') end # Minimum lowercase letters in the password def minimum_lowercase_letters=(val) prop_set('minimum-lowercase-letters', val) end # Minimum numeric(0-9) letters in the password def minimum_numeric_letters prop_get('minimum-numeric-letters') end # Minimum numeric(0-9) letters in the password def minimum_numeric_letters=(val) prop_set('minimum-numeric-letters', val) end # Minimum special characters(non-alphanumeric) in the password def minimum_special_characters prop_get('minimum-special-characters') end # Minimum special characters(non-alphanumeric) in the password def minimum_special_characters=(val) prop_set('minimum-special-characters', val) end # Block repeated characters count def block_repeated_characters prop_get('block-repeated-characters') end # Block repeated characters count def block_repeated_characters=(val) prop_set('block-repeated-characters', val) end # Save password history for password changes def password_history_count prop_get('password-history-count') end # Save password history for password changes def password_history_count=(val) prop_set('password-history-count', val) end # New Password must differ by the count chars def new_password_differs_by_characters prop_get('new-password-differs-by-characters') end # New Password must differ by the count chars def new_password_differs_by_characters=(val) prop_set('new-password-differs-by-characters', val) end # Password change block period def password_change_period_block prop_get('password-change-period-block') end # Password change block period def password_change_period_block=(val) prop_set('password-change-period-block', val) end end # class PasswordComplexity def password_complexity @subclasses['password-complexity'] ||= PasswordComplexity.new(parent_instance: self, create_children: @create_children) end class PasswordProfile < XML::ConfigClass def has_multiple_values? true end def _section :'password-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PasswordChange < ConfigClass def has_multiple_values? false end def _section :'password-change' end @props={"expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"365", "default"=>"0", "help-string"=>"Password expiry days"}, "expiration-warning-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password expiry warning period"}, "post-expiration-admin-login-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3", "default"=>"0", "help-string"=>"Password post-expiry admin login count"}, "post-expiration-grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=>"Password post-expiry grace period"}} # Password expiry days def expiration_period prop_get('expiration-period') end # Password expiry days def expiration_period=(val) prop_set('expiration-period', val) end # Password expiry warning period def expiration_warning_period prop_get('expiration-warning-period') end # Password expiry warning period def expiration_warning_period=(val) prop_set('expiration-warning-period', val) end # Password post-expiry admin login count def post_expiration_admin_login_count prop_get('post-expiration-admin-login-count') end # Password post-expiry admin login count def post_expiration_admin_login_count=(val) prop_set('post-expiration-admin-login-count', val) end # Password post-expiry grace period def post_expiration_grace_period prop_get('post-expiration-grace-period') end # Password post-expiry grace period def post_expiration_grace_period=(val) prop_set('post-expiration-grace-period', val) end end # class PasswordChange def password_change @subclasses['password-change'] ||= PasswordChange.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[A-Za-z][[A-Za-z0-9._-]*$", "help-string"=>"Alphanumeric string starting with an Alphabet"}} # Alphanumeric string starting with an Alphabet def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PasswordProfile def password_profile if @create_children @subclasses['password-profile'] ||= PasswordProfile.new(parent_instance: self, create_children: @create_children) else PasswordProfile.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Preferences < ConfigClass def has_multiple_values? false end def _section :'preferences' end class SavedLogQuery < ConfigClass def has_multiple_values? false end def _section :'saved-log-query' end class Unified < XML::ConfigClass def has_multiple_values? true end def _section :'unified' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Unified def unified if @create_children @subclasses['unified'] ||= Unified.new(parent_instance: self, create_children: @create_children) else Unified.new(parent_instance: self) end end class Traffic < XML::ConfigClass def has_multiple_values? true end def _section :'traffic' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Traffic def traffic if @create_children @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) else Traffic.new(parent_instance: self) end end class Threat < XML::ConfigClass def has_multiple_values? true end def _section :'threat' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Threat def threat if @create_children @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) else Threat.new(parent_instance: self) end end class Gtp < XML::ConfigClass def has_multiple_values? true end def _section :'gtp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gtp def gtp if @create_children @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) else Gtp.new(parent_instance: self) end end class Url < XML::ConfigClass def has_multiple_values? true end def _section :'url' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Url def url if @create_children @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) else Url.new(parent_instance: self) end end class Data < XML::ConfigClass def has_multiple_values? true end def _section :'data' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Data def data if @create_children @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) else Data.new(parent_instance: self) end end class Config < XML::ConfigClass def has_multiple_values? true end def _section :'config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Config def config if @create_children @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) else Config.new(parent_instance: self) end end class System < XML::ConfigClass def has_multiple_values? true end def _section :'system' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class System def system if @create_children @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) else System.new(parent_instance: self) end end class Wildfire < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Wildfire def wildfire if @create_children @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) else Wildfire.new(parent_instance: self) end end class Hipmatch < XML::ConfigClass def has_multiple_values? true end def _section :'hipmatch' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Hipmatch def hipmatch if @create_children @subclasses['hipmatch'] ||= Hipmatch.new(parent_instance: self, create_children: @create_children) else Hipmatch.new(parent_instance: self) end end class Corr < XML::ConfigClass def has_multiple_values? true end def _section :'corr' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Corr def corr if @create_children @subclasses['corr'] ||= Corr.new(parent_instance: self, create_children: @create_children) else Corr.new(parent_instance: self) end end class Tunnel < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tunnel def tunnel if @create_children @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) else Tunnel.new(parent_instance: self) end end class Userid < XML::ConfigClass def has_multiple_values? true end def _section :'userid' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Userid def userid if @create_children @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) else Userid.new(parent_instance: self) end end class Auth < XML::ConfigClass def has_multiple_values? true end def _section :'auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Auth def auth if @create_children @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) else Auth.new(parent_instance: self) end end class Globalprotect < XML::ConfigClass def has_multiple_values? true end def _section :'globalprotect' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Globalprotect def globalprotect if @create_children @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) else Globalprotect.new(parent_instance: self) end end class Alarm < XML::ConfigClass def has_multiple_values? true end def _section :'alarm' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Alarm def alarm if @create_children @subclasses['alarm'] ||= Alarm.new(parent_instance: self, create_children: @create_children) else Alarm.new(parent_instance: self) end end class Decryption < XML::ConfigClass def has_multiple_values? true end def _section :'decryption' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name"}, "query"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"2048"}} # Device name def name prop_get('@name') end def query prop_get('query') end def query=(val) prop_set('query', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Decryption def decryption if @create_children @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) else Decryption.new(parent_instance: self) end end @props={} end # class SavedLogQuery def saved_log_query @subclasses['saved-log-query'] ||= SavedLogQuery.new(parent_instance: self, create_children: @create_children) end @props={"disable-dns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def disable_dns prop_get('disable-dns') end def disable_dns=(val) prop_set('disable-dns', val) end end # class Preferences def preferences @subclasses['preferences'] ||= Preferences.new(parent_instance: self, create_children: @create_children) end class Permissions < XML::ConfigClass def has_multiple_values? true end def _section :'permissions' end class RoleBased < XML::ConfigClass def has_multiple_values? true end def _section :'role-based' end class Vsysreader < XML::ConfigClass def has_multiple_values? true end def _section :'vsysreader' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/@name|#config/devices/entry/@name", "#config/devices/entry/@name|#config/devices/entry/@name"]}} # Device name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsysreader def vsysreader if @create_children @subclasses['vsysreader'] ||= Vsysreader.new(parent_instance: self, create_children: @create_children) else Vsysreader.new(parent_instance: self) end end class Vsysadmin < XML::ConfigClass def has_multiple_values? true end def _section :'vsysadmin' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Device name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/@name|#config/devices/entry/@name", "#config/devices/entry/@name|#config/devices/entry/@name"]}} # Device name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsysadmin def vsysadmin if @create_children @subclasses['vsysadmin'] ||= Vsysadmin.new(parent_instance: self, create_children: @create_children) else Vsysadmin.new(parent_instance: self) end end class Devicereader < XML::ConfigClass def has_multiple_values? true end def _section :'devicereader' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Devicereader def devicereader if @create_children @subclasses['devicereader'] ||= Devicereader.new(parent_instance: self, create_children: @create_children) else Devicereader.new(parent_instance: self) end end class Deviceadmin < XML::ConfigClass def has_multiple_values? true end def _section :'deviceadmin' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Deviceadmin def deviceadmin if @create_children @subclasses['deviceadmin'] ||= Deviceadmin.new(parent_instance: self, create_children: @create_children) else Deviceadmin.new(parent_instance: self) end end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry/@name", "#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["##/predefined/admin-role/entry[role/device]/@name", "##/predefined/admin-role/entry[role/device]/@name"]}} def profile prop_get('profile') end def profile=(val) prop_set('profile', val) end end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"superreader"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}, "superuser"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}, "panorama-admin"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}} def superreader prop_get('superreader') end def superreader=(val) prop_set('superreader', val) end def superuser prop_get('superuser') end def superuser=(val) prop_set('superuser', val) end def panorama_admin prop_get('panorama-admin') end def panorama_admin=(val) prop_set('panorama-admin', val) end end # class RoleBased def role_based if @create_children @subclasses['role-based'] ||= RoleBased.new(parent_instance: self, create_children: @create_children) else RoleBased.new(parent_instance: self) end end @props={} end # class Permissions def permissions if @create_children @subclasses['permissions'] ||= Permissions.new(parent_instance: self, create_children: @create_children) else Permissions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[a-zA-Z0-9_.-]+$", "maxlen"=>"31", "help-string"=>"user name (alphanumeric)"}, "phash"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "password-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/mgt-config/password-profile/entry/@name"]}, "client-certificate-only"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Is client certificate authentication enough?"}, "public-key"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"4096", "help-string"=>"Public RSA/DSA"}} # user name (alphanumeric) def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def password_profile prop_get('password-profile') end def password_profile=(val) prop_set('password-profile', val) end # Is client certificate authentication enough? def client_certificate_only prop_get('client-certificate-only') end # Is client certificate authentication enough? def client_certificate_only=(val) prop_set('client-certificate-only', val) end # Public RSA/DSA def public_key prop_get('public-key') end # Public RSA/DSA def public_key=(val) prop_set('public-key', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end class AccessDomain < XML::ConfigClass def has_multiple_values? true end def _section :'access-domain' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry/@name", "#config/devices/entry/vsys/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AccessDomain def access_domain if @create_children @subclasses['access-domain'] ||= AccessDomain.new(parent_instance: self, create_children: @create_children) else AccessDomain.new(parent_instance: self) end end @props={} end # class MgtConfig def mgt_config @subclasses['mgt-config'] ||= MgtConfig.new(parent_instance: self, create_children: @create_children) end class Shared < ConfigClass def has_multiple_values? false end def _section :'shared' end class GlobalProtect__1 < ConfigClass def has_multiple_values? false end def _section :'global-protect__1' end class ClientlessApp < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application name"}, "application-home-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([A-Za-z0-9_\\.~!\\*'\\(\\);:@=\\+\\$,/\\?#%\\&-]|\\[|\\])+$", "maxlen"=>"4095", "help-string"=>"Home URL of application"}, "description"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"Description for application"}, "app-icon"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"180000", "optional"=>"yes", "help-string"=>"application icon"}} # clientless vpn application name def name prop_get('@name') end # Home URL of application def application_home_url prop_get('application-home-url') end # Home URL of application def application_home_url=(val) prop_set('application-home-url', val) end # Description for application def description prop_get('description') end # Description for application def description=(val) prop_set('description', val) end # application icon def app_icon prop_get('app-icon') end # application icon def app_icon=(val) prop_set('app-icon', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessApp def clientless_app if @create_children @subclasses['clientless-app'] ||= ClientlessApp.new(parent_instance: self, create_children: @create_children) else ClientlessApp.new(parent_instance: self) end end class ClientlessAppGroup < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"200", "autocomplete"=>"yes", "memberof"=>["#config/shared/global-protect/clientless-app/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application group name"}} # clientless vpn application group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessAppGroup def clientless_app_group if @create_children @subclasses['clientless-app-group'] ||= ClientlessAppGroup.new(parent_instance: self, create_children: @create_children) else ClientlessAppGroup.new(parent_instance: self) end end @props={} end # class GlobalProtect__1 def global_protect__1 @subclasses['global-protect__1'] ||= GlobalProtect__1.new(parent_instance: self, create_children: @create_children) end class AuthenticationProfile < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SingleSignOn < ConfigClass def has_multiple_values? false end def _section :'single-sign-on' end @props={"realm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Kerberos realm to be used for authentication"}, "service-principal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^([:/a-zA-Z0-9._-])+$", "help-string"=>"Kerberos service principal"}, "kerberos-keytab"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"8192", "encrypt"=>"yes", "help-string"=>"Kerberos keytab"}} # Kerberos realm to be used for authentication def realm prop_get('realm') end # Kerberos realm to be used for authentication def realm=(val) prop_set('realm', val) end # Kerberos service principal def service_principal prop_get('service-principal') end # Kerberos service principal def service_principal=(val) prop_set('service-principal', val) end # Kerberos keytab def kerberos_keytab prop_get('kerberos-keytab') end # Kerberos keytab def kerberos_keytab=(val) prop_set('kerberos-keytab', val) end end # class SingleSignOn def single_sign_on @subclasses['single-sign-on'] ||= SingleSignOn.new(parent_instance: self, create_children: @create_children) end class Lockout < ConfigClass def has_multiple_values? false end def _section :'lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"0", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class Lockout def lockout @subclasses['lockout'] ||= Lockout.new(parent_instance: self, create_children: @create_children) end class AllowList < XML::ConfigClass def has_multiple_values? true end def _section :'allow-list' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name"], "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"1023"}, "enum"=>[{"value"=>"all", "help-string"=>"all user and user groups"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AllowList def allow_list if @create_children @subclasses['allow-list'] ||= AllowList.new(parent_instance: self, create_children: @create_children) else AllowList.new(parent_instance: self) end end class Method < XML::ConfigClass def has_multiple_values? true end def _section :'method' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class LocalDatabase < ConfigClass def has_multiple_values? false end def _section :'local-database' end @props={} end # class LocalDatabase def local_database @subclasses['local-database'] ||= LocalDatabase.new(parent_instance: self, create_children: @create_children) end class Radius < ConfigClass def has_multiple_values? false end def _section :'radius' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"RADIUS server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/radius/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from RADIUS"}} # RADIUS server profile object def server_profile prop_get('server-profile') end # RADIUS server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from RADIUS def checkgroup prop_get('checkgroup') end # Retrieve user group from RADIUS def checkgroup=(val) prop_set('checkgroup', val) end end # class Radius def radius @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) end class Ldap < ConfigClass def has_multiple_values? false end def _section :'ldap' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/ldap/entry/@name"]}, "login-attribute"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "Default is samAccountName for Active Directory, uid for other directory servers"}, "passwd-exp-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "optional"=>"yes", "help-string"=>"Avail for Active Directory, eDir", "default"=>"7"}} # LDAP server profile object def server_profile prop_get('server-profile') end # LDAP server profile object def server_profile=(val) prop_set('server-profile', val) end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute prop_get('login-attribute') end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute=(val) prop_set('login-attribute', val) end # Avail for Active Directory, eDir def passwd_exp_days prop_get('passwd-exp-days') end # Avail for Active Directory, eDir def passwd_exp_days=(val) prop_set('passwd-exp-days', val) end end # class Ldap def ldap @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) end class Kerberos__5 < ConfigClass def has_multiple_values? false end def _section :'kerberos__5' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/kerberos/entry/@name"]}, "realm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Realm name to be used for authentication"}} # Kerberos server profile object def server_profile prop_get('server-profile') end # Kerberos server profile object def server_profile=(val) prop_set('server-profile', val) end # Realm name to be used for authentication def realm prop_get('realm') end # Realm name to be used for authentication def realm=(val) prop_set('realm', val) end end # class Kerberos__5 def kerberos__5 @subclasses['kerberos__5'] ||= Kerberos__5.new(parent_instance: self, create_children: @create_children) end class Tacplus < ConfigClass def has_multiple_values? false end def _section :'tacplus' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"TACACS+ server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/tacplus/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from TACACS+"}} # TACACS+ server profile object def server_profile prop_get('server-profile') end # TACACS+ server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from TACACS+ def checkgroup prop_get('checkgroup') end # Retrieve user group from TACACS+ def checkgroup=(val) prop_set('checkgroup', val) end end # class Tacplus def tacplus @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) end class SamlIdp < ConfigClass def has_multiple_values? false end def _section :'saml-idp' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"IdP server profile object", "autocomplete"=>"yes", "memberof"=>["#config/shared/server-profile/saml-idp/entry/@name"]}, "enable-single-logout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable single logout"}, "request-signing-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "complete-handler"=>"check-cert-fields-completer", "help-string"=>"Signing certificate for SAML requests", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Certificate profile for IDP and SP", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}, "attribute-name-username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response", "uiHint-fieldLabel"=>"Username Attribute"}, "attribute-name-usergroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup", "uiHint-fieldLabel"=>"User Group Attribute"}, "attribute-name-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role", "uiHint-fieldLabel"=>"Admin Role Attribute"}, "attribute-name-access-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain", "uiHint-fieldLabel"=>"Access Domain Attribute"}} # IdP server profile object def server_profile prop_get('server-profile') end # IdP server profile object def server_profile=(val) prop_set('server-profile', val) end # Enable single logout def enable_single_logout prop_get('enable-single-logout') end # Enable single logout def enable_single_logout=(val) prop_set('enable-single-logout', val) end # Signing certificate for SAML requests def request_signing_certificate prop_get('request-signing-certificate') end # Signing certificate for SAML requests def request_signing_certificate=(val) prop_set('request-signing-certificate', val) end # Certificate profile for IDP and SP def certificate_profile prop_get('certificate-profile') end # Certificate profile for IDP and SP def certificate_profile=(val) prop_set('certificate-profile', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username prop_get('attribute-name-username') end # Attribute name for username to be extracted from SAML response def attribute_name_username=(val) prop_set('attribute-name-username', val) end # usergroup def attribute_name_usergroup prop_get('attribute-name-usergroup') end # usergroup def attribute_name_usergroup=(val) prop_set('attribute-name-usergroup', val) end # admin-role def attribute_name_admin_role prop_get('attribute-name-admin-role') end # admin-role def attribute_name_admin_role=(val) prop_set('attribute-name-admin-role', val) end # access-domain def attribute_name_access_domain prop_get('attribute-name-access-domain') end # access-domain def attribute_name_access_domain=(val) prop_set('attribute-name-access-domain', val) end end # class SamlIdp def saml_idp @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Method def method if @create_children @subclasses['method'] ||= Method.new(parent_instance: self, create_children: @create_children) else Method.new(parent_instance: self) end end class MultiFactorAuth < ConfigClass def has_multiple_values? false end def _section :'multi-factor-auth' end class Factors < XML::ConfigClass def has_multiple_values? true end def _section :'factors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "max-count"=>"3", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/mfa-server-profile/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Factors def factors if @create_children @subclasses['factors'] ||= Factors.new(parent_instance: self, create_children: @create_children) else Factors.new(parent_instance: self) end end @props={"mfa-enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable Additional Authentication Factors"}} # Enable Additional Authentication Factors def mfa_enable prop_get('mfa-enable') end # Enable Additional Authentication Factors def mfa_enable=(val) prop_set('mfa-enable', val) end end # class MultiFactorAuth def multi_factor_auth @subclasses['multi-factor-auth'] ||= MultiFactorAuth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Group name"}, "username-modifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"%USERINPUT%", "help-string"=>"Username modifier(Not for SAML) to handle user domain", "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"127"}, "enum"=> [{"value"=>"%USERINPUT%"}, {"value"=>"%USERINPUT%@%USERDOMAIN%"}, {"value"=>"%USERDOMAIN%\\%USERINPUT%"}]}}, "user-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "regex"=> "^[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|\\.]{1}[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|]{0,62}$", "help-string"=>"Domain name(Not for SAML) to be used for authentication"}} # Group name def name prop_get('@name') end # Username modifier(Not for SAML) to handle user domain def username_modifier prop_get('username-modifier') end # Username modifier(Not for SAML) to handle user domain def username_modifier=(val) prop_set('username-modifier', val) end # Domain name(Not for SAML) to be used for authentication def user_domain prop_get('user-domain') end # Domain name(Not for SAML) to be used for authentication def user_domain=(val) prop_set('user-domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationProfile def authentication_profile if @create_children @subclasses['authentication-profile'] ||= AuthenticationProfile.new(parent_instance: self, create_children: @create_children) else AuthenticationProfile.new(parent_instance: self) end end class AuthenticationSequence < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-sequence' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AuthenticationProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationProfiles def authentication_profiles if @create_children @subclasses['authentication-profiles'] ||= AuthenticationProfiles.new(parent_instance: self, create_children: @create_children) else AuthenticationProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Authentication sequence name"}, "use-domain-find-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Attempt to use domain to determine authentication profile"}} # Authentication sequence name def name prop_get('@name') end # Attempt to use domain to determine authentication profile def use_domain_find_profile prop_get('use-domain-find-profile') end # Attempt to use domain to determine authentication profile def use_domain_find_profile=(val) prop_set('use-domain-find-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationSequence def authentication_sequence if @create_children @subclasses['authentication-sequence'] ||= AuthenticationSequence.new(parent_instance: self, create_children: @create_children) else AuthenticationSequence.new(parent_instance: self) end end class CertificateProfile < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsernameField < XML::ConfigClass def has_multiple_values? true end def _section :'username-field' end @props={"subject"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject", "enum"=>[{"value"=>"common-name"}]}, "subject-alt"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject alternative name", "enum"=>[{"value"=>"email"}, {"value"=>"principal-name"}]}} # get user name from subject def subject prop_get('subject') end # get user name from subject def subject=(val) prop_set('subject', val) end # get user name from subject alternative name def subject_alt prop_get('subject-alt') end # get user name from subject alternative name def subject_alt=(val) prop_set('subject-alt', val) end end # class UsernameField def username_field if @create_children @subclasses['username-field'] ||= UsernameField.new(parent_instance: self, create_children: @create_children) else UsernameField.new(parent_instance: self) end end class CA < XML::ConfigClass def has_multiple_values? true end def _section :'CA' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"CA file for client certificate", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry[ca='yes']/@name"]}, "default-ocsp-url"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"default URL for ocsp verification"}, "ocsp-verify-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "help-string"=>"Certificate to verify signature in OCSP response", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry/@name"]}, "template-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"Certificate Template Name / OID for the certificate"}} # CA file for client certificate def name prop_get('@name') end # default URL for ocsp verification def default_ocsp_url prop_get('default-ocsp-url') end # default URL for ocsp verification def default_ocsp_url=(val) prop_set('default-ocsp-url', val) end # Certificate to verify signature in OCSP response def ocsp_verify_cert prop_get('ocsp-verify-cert') end # Certificate to verify signature in OCSP response def ocsp_verify_cert=(val) prop_set('ocsp-verify-cert', val) end # Certificate Template Name / OID for the certificate def template_name prop_get('template-name') end # Certificate Template Name / OID for the certificate def template_name=(val) prop_set('template-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CA def CA if @create_children @subclasses['CA'] ||= CA.new(parent_instance: self, create_children: @create_children) else CA.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Profile name"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "uiHint-fieldLabel"=>"User Domain"}, "use-crl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ocsp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "ocsp-exclude-nonce"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to exclude nonce extension for OCSP requests"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "block-unauthenticated-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block session if the certificate was not issued to the authenticating device"}, "block-expired-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is expired"}} # Profile name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def domain prop_get('domain') end # alphanumeric string [ 0-9a-zA-Z._-] def domain=(val) prop_set('domain', val) end def use_crl prop_get('use-crl') end def use_crl=(val) prop_set('use-crl', val) end def use_ocsp prop_get('use-ocsp') end def use_ocsp=(val) prop_set('use-ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce prop_get('ocsp-exclude-nonce') end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce=(val) prop_set('ocsp-exclude-nonce', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert prop_get('block-unauthenticated-cert') end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert=(val) prop_set('block-unauthenticated-cert', val) end # whether to block a session if cert. status is expired def block_expired_cert prop_get('block-expired-cert') end # whether to block a session if cert. status is expired def block_expired_cert=(val) prop_set('block-expired-cert', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateProfile def certificate_profile if @create_children @subclasses['certificate-profile'] ||= CertificateProfile.new(parent_instance: self, create_children: @create_children) else CertificateProfile.new(parent_instance: self) end end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end class Ldap < XML::ConfigClass def has_multiple_values? true end def _section :'ldap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"ldap server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"389", "help-string"=>"default 389 for LDAP, 636 for LDAPS"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap server ip or host name. def address prop_get('address') end # ldap server ip or host name. def address=(val) prop_set('address', val) end # default 389 for LDAP, 636 for LDAPS def port prop_get('port') end # default 389 for LDAP, 636 for LDAPS def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "ldap-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"other", "enum"=> [{"value"=>"active-directory"}, {"value"=>"e-directory"}, {"value"=>"sun"}, {"value"=>"other"}]}, "ssl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "verify-server-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify server certificate for SSL sessions"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "base"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"Default base distinguished name (DN) to use for searches"}, "bind-dn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"bind distinguished name"}, "bind-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"121", "encrypt"=>"yes", "help-string"=>"bind password"}, "timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"30", "help-string"=>"number of seconds to wait for performing searches"}, "bind-timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"30", "help-string"=>"number of seconds to use for connecting to servers"}, "retry-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"3600", "help-string"=>"Interval (seconds) for reconnecting LDAP server", "default"=>"60"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end def ldap_type prop_get('ldap-type') end def ldap_type=(val) prop_set('ldap-type', val) end def ssl prop_get('ssl') end def ssl=(val) prop_set('ssl', val) end # Verify server certificate for SSL sessions def verify_server_certificate prop_get('verify-server-certificate') end # Verify server certificate for SSL sessions def verify_server_certificate=(val) prop_set('verify-server-certificate', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Default base distinguished name (DN) to use for searches def base prop_get('base') end # Default base distinguished name (DN) to use for searches def base=(val) prop_set('base', val) end # bind distinguished name def bind_dn prop_get('bind-dn') end # bind distinguished name def bind_dn=(val) prop_set('bind-dn', val) end # bind password def bind_password prop_get('bind-password') end # bind password def bind_password=(val) prop_set('bind-password', val) end # number of seconds to wait for performing searches def timelimit prop_get('timelimit') end # number of seconds to wait for performing searches def timelimit=(val) prop_set('timelimit', val) end # number of seconds to use for connecting to servers def bind_timelimit prop_get('bind-timelimit') end # number of seconds to use for connecting to servers def bind_timelimit=(val) prop_set('bind-timelimit', val) end # Interval (seconds) for reconnecting LDAP server def retry_interval prop_get('retry-interval') end # Interval (seconds) for reconnecting LDAP server def retry_interval=(val) prop_set('retry-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ldap def ldap if @create_children @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) else Ldap.new(parent_instance: self) end end class Radius < XML::ConfigClass def has_multiple_values? true end def _section :'radius' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class CHAP < ConfigClass def has_multiple_values? false end def _section :'CHAP' end @props={} end # class CHAP def CHAP @subclasses['CHAP'] ||= CHAP.new(parent_instance: self, create_children: @create_children) end class PAP < ConfigClass def has_multiple_values? false end def _section :'PAP' end @props={} end # class PAP def PAP @subclasses['PAP'] ||= PAP.new(parent_instance: self, create_children: @create_children) end class PEAPMSCHAPv2 < ConfigClass def has_multiple_values? false end def _section :'PEAP-MSCHAPv2' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "allow-pwd-change"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Allow users to change passwords after expiry"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Allow users to change passwords after expiry def allow_pwd_change prop_get('allow-pwd-change') end # Allow users to change passwords after expiry def allow_pwd_change=(val) prop_set('allow-pwd-change', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPMSCHAPv2 def PEAP_MSCHAPv2 @subclasses['PEAP-MSCHAPv2'] ||= PEAPMSCHAPv2.new(parent_instance: self, create_children: @create_children) end class PEAPWithGTC < ConfigClass def has_multiple_values? false end def _section :'PEAP-with-GTC' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPWithGTC def PEAP_with_GTC @subclasses['PEAP-with-GTC'] ||= PEAPWithGTC.new(parent_instance: self, create_children: @create_children) end class EAPTTLSWithPAP < ConfigClass def has_multiple_values? false end def _section :'EAP-TTLS-with-PAP' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class EAPTTLSWithPAP def EAP_TTLS_with_PAP @subclasses['EAP-TTLS-with-PAP'] ||= EAPTTLSWithPAP.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"RADIUS server IP or host name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for RADIUS communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1812", "help-string"=>"RADIUS server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # RADIUS server IP or host name def ip_address prop_get('ip-address') end # RADIUS server IP or host name def ip_address=(val) prop_set('ip-address', val) end # Shared secret for RADIUS communication def secret prop_get('secret') end # Shared secret for RADIUS communication def secret=(val) prop_set('secret', val) end # RADIUS server port def port prop_get('port') end # RADIUS server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"120", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"3", "help-string"=>"number of attempts before giving up authentication"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # number of attempts before giving up authentication def retries prop_get('retries') end # number of attempts before giving up authentication def retries=(val) prop_set('retries', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Radius def radius if @create_children @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) else Radius.new(parent_instance: self) end end class Scp < XML::ConfigClass def has_multiple_values? true end def _section :'scp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"SCP hostname"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"22", "help-string"=>"SCP port"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"128", "regex"=>"[^']*", "help-string"=>"SCP username"}, "password"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "regex"=>"[^']*", "help-string"=>"SCP Password", "encrypt"=>"yes"}} # alphanumeric string def name prop_get('@name') end # SCP hostname def server prop_get('server') end # SCP hostname def server=(val) prop_set('server', val) end # SCP port def port prop_get('port') end # SCP port def port=(val) prop_set('port', val) end # SCP username def username prop_get('username') end # SCP username def username=(val) prop_set('username', val) end # SCP Password def password prop_get('password') end # SCP Password def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scp def scp if @create_children @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) else Scp.new(parent_instance: self) end end class Kerberos < XML::ConfigClass def has_multiple_values? true end def _section :'kerberos' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Kerberos server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"88", "help-string"=>"Kerberos Domain Controller "}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Kerberos server ip or host name. def host prop_get('host') end # Kerberos server ip or host name. def host=(val) prop_set('host', val) end # Kerberos Domain Controller def port prop_get('port') end # Kerberos Domain Controller def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Kerberos def kerberos if @create_children @subclasses['kerberos'] ||= Kerberos.new(parent_instance: self, create_children: @create_children) else Kerberos.new(parent_instance: self) end end class Tacplus < XML::ConfigClass def has_multiple_values? true end def _section :'tacplus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"TACACS+ server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for TACACS+ communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"49", "help-string"=>"TACACS+ server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # TACACS+ server ip or host name. def address prop_get('address') end # TACACS+ server ip or host name. def address=(val) prop_set('address', val) end # Shared secret for TACACS+ communication def secret prop_get('secret') end # Shared secret for TACACS+ communication def secret=(val) prop_set('secret', val) end # TACACS+ server port def port prop_get('port') end # TACACS+ server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "use-single-connection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use single connection for all authentication"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"CHAP", "help-string"=>"Select authentication protocol", "enum"=>[{"value"=>"CHAP"}, {"value"=>"PAP"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end # Use single connection for all authentication def use_single_connection prop_get('use-single-connection') end # Use single connection for all authentication def use_single_connection=(val) prop_set('use-single-connection', val) end # Select authentication protocol def protocol prop_get('protocol') end # Select authentication protocol def protocol=(val) prop_set('protocol', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tacplus def tacplus if @create_children @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) else Tacplus.new(parent_instance: self) end end class SamlIdp < XML::ConfigClass def has_multiple_values? true end def _section :'saml-idp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "admin-use-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Can only be used for administrative purposes"}, "entity-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Unique identifier for SAML IdP"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "complete-handler"=>"check-idp-cert-fields-completer", "help-string"=>"Object name of IdP signing certificate", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry/@name"]}, "sso-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Sign On Service URL for the IdP server"}, "sso-bindings"=> {"node-type"=>"element", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "slo-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Logout Service URL for the IdP server"}, "slo-bindings"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "validate-idp-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Certificate revocation check for IdP certificate when checking assertion signature"}, "want-auth-requests-signed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Client auth request signed by cert"}, "max-clock-skew"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"900", "default"=>"60", "help-string"=> "maximum allowed clock skew in second between SAML entities' system time"}, "attribute-name-username-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response"}, "attribute-name-usergroup-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup"}, "attribute-name-admin-role-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role"}, "attribute-name-access-domain-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Can only be used for administrative purposes def admin_use_only prop_get('admin-use-only') end # Can only be used for administrative purposes def admin_use_only=(val) prop_set('admin-use-only', val) end # Unique identifier for SAML IdP def entity_id prop_get('entity-id') end # Unique identifier for SAML IdP def entity_id=(val) prop_set('entity-id', val) end # Object name of IdP signing certificate def certificate prop_get('certificate') end # Object name of IdP signing certificate def certificate=(val) prop_set('certificate', val) end # The Single Sign On Service URL for the IdP server def sso_url prop_get('sso-url') end # The Single Sign On Service URL for the IdP server def sso_url=(val) prop_set('sso-url', val) end def sso_bindings prop_get('sso-bindings') end def sso_bindings=(val) prop_set('sso-bindings', val) end # The Single Logout Service URL for the IdP server def slo_url prop_get('slo-url') end # The Single Logout Service URL for the IdP server def slo_url=(val) prop_set('slo-url', val) end def slo_bindings prop_get('slo-bindings') end def slo_bindings=(val) prop_set('slo-bindings', val) end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate prop_get('validate-idp-certificate') end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate=(val) prop_set('validate-idp-certificate', val) end # Client auth request signed by cert def want_auth_requests_signed prop_get('want-auth-requests-signed') end # Client auth request signed by cert def want_auth_requests_signed=(val) prop_set('want-auth-requests-signed', val) end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew prop_get('max-clock-skew') end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew=(val) prop_set('max-clock-skew', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username_import prop_get('attribute-name-username-import') end # Attribute name for username to be extracted from SAML response def attribute_name_username_import=(val) prop_set('attribute-name-username-import', val) end # usergroup def attribute_name_usergroup_import prop_get('attribute-name-usergroup-import') end # usergroup def attribute_name_usergroup_import=(val) prop_set('attribute-name-usergroup-import', val) end # admin-role def attribute_name_admin_role_import prop_get('attribute-name-admin-role-import') end # admin-role def attribute_name_admin_role_import=(val) prop_set('attribute-name-admin-role-import', val) end # access-domain def attribute_name_access_domain_import prop_get('attribute-name-access-domain-import') end # access-domain def attribute_name_access_domain_import=(val) prop_set('attribute-name-access-domain-import', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SamlIdp def saml_idp if @create_children @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) else SamlIdp.new(parent_instance: self) end end class Netflow < XML::ConfigClass def has_multiple_values? true end def _section :'netflow' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TemplateRefreshRate < ConfigClass def has_multiple_values? false end def _section :'template-refresh-rate' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30"}, "packets"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"20"}} def minutes prop_get('minutes') end def minutes=(val) prop_set('minutes', val) end def packets prop_get('packets') end def packets=(val) prop_set('packets', val) end end # class TemplateRefreshRate def template_refresh_rate @subclasses['template-refresh-rate'] ||= TemplateRefreshRate.new(parent_instance: self, create_children: @create_children) end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Netflow server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"loose-membership"=>"yes", "maxlen"=>"63"}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2055", "min"=>"1", "max"=>"65535", "help-string"=>"Netflow server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Netflow server ip or host name. def host prop_get('host') end # Netflow server ip or host name. def host=(val) prop_set('host', val) end # Netflow server port def port prop_get('port') end # Netflow server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "active-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Active timeout in minutes"}, "export-enterprise-fields"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Export PAN-OS Specific Field Types"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Active timeout in minutes def active_timeout prop_get('active-timeout') end # Active timeout in minutes def active_timeout=(val) prop_set('active-timeout', val) end # Export PAN-OS Specific Field Types def export_enterprise_fields prop_get('export-enterprise-fields') end # Export PAN-OS Specific Field Types def export_enterprise_fields=(val) prop_set('export-enterprise-fields', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Netflow def netflow if @create_children @subclasses['netflow'] ||= Netflow.new(parent_instance: self, create_children: @create_children) else Netflow.new(parent_instance: self) end end class Dns < XML::ConfigClass def has_multiple_values? true end def _section :'dns' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "#myentry(devices)/network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Dns def dns if @create_children @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) else Dns.new(parent_instance: self) end end class MfaServerProfile < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-server-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MfaConfig < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/auth/mfa/entry[@name='$vnd']/content/entry/@name"]}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaConfig def mfa_config if @create_children @subclasses['mfa-config'] ||= MfaConfig.new(parent_instance: self, create_children: @create_children) else MfaConfig.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"MFA Server Profile Name"}, "mfa-vendor-type"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=>["##/predefined/auth/mfa/entry/@name"]}, "mfa-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the MFA Vendor", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # MFA Server Profile Name def name prop_get('@name') end # Vendor and product type def mfa_vendor_type prop_get('mfa-vendor-type') end # Vendor and product type def mfa_vendor_type=(val) prop_set('mfa-vendor-type', val) end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile prop_get('mfa-cert-profile') end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile=(val) prop_set('mfa-cert-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaServerProfile def mfa_server_profile if @create_children @subclasses['mfa-server-profile'] ||= MfaServerProfile.new(parent_instance: self, create_children: @create_children) else MfaServerProfile.new(parent_instance: self) end end @props={} end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/system/match-list/entry/filter", "##/shared/log-settings/system/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/config/match-list/entry/filter", "##/shared/log-settings/config/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/userid/match-list/entry/filter", "##/shared/log-settings/userid/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/iptag/match-list/entry/filter", "##/shared/log-settings/iptag/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/globalprotect/match-list/entry/filter", "##/shared/log-settings/globalprotect/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class Hipmatch__6 < ConfigClass def has_multiple_values? false end def _section :'hipmatch__6' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/hipmatch/match-list/entry/filter", "##/shared/log-settings/hipmatch/match-list/entry/filter"]}, "send-to-panorama"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def send_to_panorama prop_get('send-to-panorama') end def send_to_panorama=(val) prop_set('send-to-panorama', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Hipmatch__6 def hipmatch__6 @subclasses['hipmatch__6'] ||= Hipmatch__6.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SMTP gateway to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$|^\\$([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SYSLOG server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ContentPreview < ConfigClass def has_multiple_values? false end def _section :'content-preview' end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Default < XML::ConfigClass def has_multiple_values? true end def _section :'default' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic)"}} # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member prop_get('member') end # protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic) def member=(val) prop_set('member', val) end end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class IdentByIcmpType < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmpType def ident_by_icmp_type @subclasses['ident-by-icmp-type'] ||= IdentByIcmpType.new(parent_instance: self, create_children: @create_children) end class IdentByIcmp6Type < ConfigClass def has_multiple_values? false end def _section :'ident-by-icmp6-type' end @props={"type"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}, "code"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def type prop_get('type') end def type=(val) prop_set('type', val) end def code prop_get('code') end def code=(val) prop_set('code', val) end end # class IdentByIcmp6Type def ident_by_icmp6_type @subclasses['ident-by-icmp6-type'] ||= IdentByIcmp6Type.new(parent_instance: self, create_children: @create_children) end @props={"ident-by-ip-protocol"=> {"node-type"=>"element", "type"=>"rangelistspec", "min"=>"0", "max"=>"255"}} def ident_by_ip_protocol prop_get('ident-by-ip-protocol') end def ident_by_ip_protocol=(val) prop_set('ident-by-ip-protocol', val) end end # class Default def default if @create_children @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) else Default.new(parent_instance: self) end end class UseApplications < XML::ConfigClass def has_multiple_values? true end def _section :'use-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UseApplications def use_applications if @create_children @subclasses['use-applications'] ||= UseApplications.new(parent_instance: self, create_children: @create_children) else UseApplications.new(parent_instance: self) end end class ImplicitUseApplications < XML::ConfigClass def has_multiple_values? true end def _section :'implicit-use-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ImplicitUseApplications def implicit_use_applications if @create_children @subclasses['implicit-use-applications'] ||= ImplicitUseApplications.new(parent_instance: self, create_children: @create_children) else ImplicitUseApplications.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "category"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry/@name|#config/shared/content-preview/application-type/category/entry/@name"]}, "subcategory"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/category/entry[@name='$category']/subcategory/entry/@name|#config/shared/content-preview/application-type/category/entry[@name='$category']/subcategory/entry/@name"]}, "technology"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application-type/technology/entry/@name|#config/shared/content-preview/application-type/technology/entry/@name"]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "udp-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout in seconds"}, "tcp-half-closed-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "optional"=>"yes", "help-string"=>"timeout for half-close session in seconds"}, "tcp-time-wait-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "help-string"=>"timeout for session in time_wait state in seconds"}, "risk"=>{"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5"}, "evasive-behavior"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "consume-big-bandwidth"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "used-by-malware"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "able-to-transfer-file"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "has-known-vulnerability"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-other-application"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "tunnel-applications"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "prone-to-misuse"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "pervasive-use"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "file-type-ident"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "virus-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "data-ident"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "no-appid-caching"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "alg-disable-capability"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}, "parent-app"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name|#config/predefined/application-container/entry/@name"]}, "cachable"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "can-disable"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "preview"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}, "is-saas"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def category prop_get('category') end def category=(val) prop_set('category', val) end def subcategory prop_get('subcategory') end def subcategory=(val) prop_set('subcategory', val) end def technology prop_get('technology') end def technology=(val) prop_set('technology', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end # timeout in seconds def timeout prop_get('timeout') end # timeout in seconds def timeout=(val) prop_set('timeout', val) end # timeout in seconds def tcp_timeout prop_get('tcp-timeout') end # timeout in seconds def tcp_timeout=(val) prop_set('tcp-timeout', val) end # timeout in seconds def udp_timeout prop_get('udp-timeout') end # timeout in seconds def udp_timeout=(val) prop_set('udp-timeout', val) end # timeout for half-close session in seconds def tcp_half_closed_timeout prop_get('tcp-half-closed-timeout') end # timeout for half-close session in seconds def tcp_half_closed_timeout=(val) prop_set('tcp-half-closed-timeout', val) end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout prop_get('tcp-time-wait-timeout') end # timeout for session in time_wait state in seconds def tcp_time_wait_timeout=(val) prop_set('tcp-time-wait-timeout', val) end def risk prop_get('risk') end def risk=(val) prop_set('risk', val) end def evasive_behavior prop_get('evasive-behavior') end def evasive_behavior=(val) prop_set('evasive-behavior', val) end def consume_big_bandwidth prop_get('consume-big-bandwidth') end def consume_big_bandwidth=(val) prop_set('consume-big-bandwidth', val) end def used_by_malware prop_get('used-by-malware') end def used_by_malware=(val) prop_set('used-by-malware', val) end def able_to_transfer_file prop_get('able-to-transfer-file') end def able_to_transfer_file=(val) prop_set('able-to-transfer-file', val) end def has_known_vulnerability prop_get('has-known-vulnerability') end def has_known_vulnerability=(val) prop_set('has-known-vulnerability', val) end def tunnel_other_application prop_get('tunnel-other-application') end def tunnel_other_application=(val) prop_set('tunnel-other-application', val) end def tunnel_applications prop_get('tunnel-applications') end def tunnel_applications=(val) prop_set('tunnel-applications', val) end def prone_to_misuse prop_get('prone-to-misuse') end def prone_to_misuse=(val) prop_set('prone-to-misuse', val) end def pervasive_use prop_get('pervasive-use') end def pervasive_use=(val) prop_set('pervasive-use', val) end def file_type_ident prop_get('file-type-ident') end def file_type_ident=(val) prop_set('file-type-ident', val) end def virus_ident prop_get('virus-ident') end def virus_ident=(val) prop_set('virus-ident', val) end def data_ident prop_get('data-ident') end def data_ident=(val) prop_set('data-ident', val) end def no_appid_caching prop_get('no-appid-caching') end def no_appid_caching=(val) prop_set('no-appid-caching', val) end def alg_disable_capability prop_get('alg-disable-capability') end def alg_disable_capability=(val) prop_set('alg-disable-capability', val) end def parent_app prop_get('parent-app') end def parent_app=(val) prop_set('parent-app', val) end def cachable prop_get('cachable') end def cachable=(val) prop_set('cachable', val) end def can_disable prop_get('can-disable') end def can_disable=(val) prop_set('can-disable', val) end def preview prop_get('preview') end def preview=(val) prop_set('preview', val) end def is_saas prop_get('is-saas') end def is_saas=(val) prop_set('is-saas', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class ApplicationType < XML::ConfigClass def has_multiple_values? true end def _section :'application-type' end class Category < ConfigClass def has_multiple_values? false end def _section :'category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "@id"=>{"node-type"=>"attr-req", "type"=>"rangedint", "max"=>"128"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('@id') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Category def category @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) end class Technology < ConfigClass def has_multiple_values? false end def _section :'technology' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "@id"=>{"node-type"=>"attr-req", "type"=>"rangedint", "max"=>"128"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def id prop_get('@id') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Technology def technology @subclasses['technology'] ||= Technology.new(parent_instance: self, create_children: @create_children) end @props={} end # class ApplicationType def application_type if @create_children @subclasses['application-type'] ||= ApplicationType.new(parent_instance: self, create_children: @create_children) else ApplicationType.new(parent_instance: self) end end @props={} end # class ContentPreview def content_preview @subclasses['content-preview'] ||= ContentPreview.new(parent_instance: self, create_children: @create_children) end class Certificate < XML::ConfigClass def has_multiple_values? true end def _section :'certificate' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "common-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "algorithm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "ca"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes"}, "not-valid-after"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "not-valid-before"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "expiry-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}, "subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "subject-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "issuer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "issuer-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "private-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"16384", "encrypt"=>"yes", "double-encrypt"=>"yes"}, "private-key-on-hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "status"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"valid", "enum"=>[{"value"=>"valid"}, {"value"=>"revoked"}]}, "revoke-date-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def common_name prop_get('common-name') end def common_name=(val) prop_set('common-name', val) end def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end def ca prop_get('ca') end def ca=(val) prop_set('ca', val) end def not_valid_after prop_get('not-valid-after') end def not_valid_after=(val) prop_set('not-valid-after', val) end def not_valid_before prop_get('not-valid-before') end def not_valid_before=(val) prop_set('not-valid-before', val) end def expiry_epoch prop_get('expiry-epoch') end def expiry_epoch=(val) prop_set('expiry-epoch', val) end def subject prop_get('subject') end def subject=(val) prop_set('subject', val) end def subject_hash prop_get('subject-hash') end def subject_hash=(val) prop_set('subject-hash', val) end def issuer prop_get('issuer') end def issuer=(val) prop_set('issuer', val) end def issuer_hash prop_get('issuer-hash') end def issuer_hash=(val) prop_set('issuer-hash', val) end def private_key prop_get('private-key') end def private_key=(val) prop_set('private-key', val) end def private_key_on_hsm prop_get('private-key-on-hsm') end def private_key_on_hsm=(val) prop_set('private-key-on-hsm', val) end def status prop_get('status') end def status=(val) prop_set('status', val) end def revoke_date_epoch prop_get('revoke-date-epoch') end def revoke_date_epoch=(val) prop_set('revoke-date-epoch', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Certificate def certificate if @create_children @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) else Certificate.new(parent_instance: self) end end class SslTlsServiceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-tls-service-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class ProtocolSettings def protocol_settings @subclasses['protocol-settings'] ||= ProtocolSettings.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"127", "regex"=>".*", "help-string"=>"Profile name"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"SSL certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name"]}} # Profile name def name prop_get('@name') end # SSL certificate file name def certificate prop_get('certificate') end # SSL certificate file name def certificate=(val) prop_set('certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslTlsServiceProfile def ssl_tls_service_profile if @create_children @subclasses['ssl-tls-service-profile'] ||= SslTlsServiceProfile.new(parent_instance: self, create_children: @create_children) else SslTlsServiceProfile.new(parent_instance: self) end end class ResponsePage < ConfigClass def has_multiple_values? false end def _section :'response-page' end class GlobalProtectPortalCustomLoginPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-login-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomLoginPage def global_protect_portal_custom_login_page if @create_children @subclasses['global-protect-portal-custom-login-page'] ||= GlobalProtectPortalCustomLoginPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomLoginPage.new(parent_instance: self) end end class GlobalProtectPortalCustomHomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-home-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHomePage def global_protect_portal_custom_home_page if @create_children @subclasses['global-protect-portal-custom-home-page'] ||= GlobalProtectPortalCustomHomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHomePage.new(parent_instance: self) end end class GlobalProtectPortalCustomHelpPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-help-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHelpPage def global_protect_portal_custom_help_page if @create_children @subclasses['global-protect-portal-custom-help-page'] ||= GlobalProtectPortalCustomHelpPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHelpPage.new(parent_instance: self) end end class GlobalProtectPortalCustomWelcomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-welcome-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomWelcomePage def global_protect_portal_custom_welcome_page if @create_children @subclasses['global-protect-portal-custom-welcome-page'] ||= GlobalProtectPortalCustomWelcomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomWelcomePage.new(parent_instance: self) end end @props={"application-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "captive-portal-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "file-block-continue-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "file-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "ssl-cert-status-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "ssl-optout-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "url-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "url-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "credential-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "credential-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "virus-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "data-filter-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "safe-search-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "saml-auth-internal-error-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "mfa-login-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}} def application_block_page prop_get('application-block-page') end def application_block_page=(val) prop_set('application-block-page', val) end def captive_portal_text prop_get('captive-portal-text') end def captive_portal_text=(val) prop_set('captive-portal-text', val) end def file_block_continue_page prop_get('file-block-continue-page') end def file_block_continue_page=(val) prop_set('file-block-continue-page', val) end def file_block_page prop_get('file-block-page') end def file_block_page=(val) prop_set('file-block-page', val) end def ssl_cert_status_page prop_get('ssl-cert-status-page') end def ssl_cert_status_page=(val) prop_set('ssl-cert-status-page', val) end def ssl_optout_text prop_get('ssl-optout-text') end def ssl_optout_text=(val) prop_set('ssl-optout-text', val) end def url_block_page prop_get('url-block-page') end def url_block_page=(val) prop_set('url-block-page', val) end def url_coach_text prop_get('url-coach-text') end def url_coach_text=(val) prop_set('url-coach-text', val) end def credential_block_page prop_get('credential-block-page') end def credential_block_page=(val) prop_set('credential-block-page', val) end def credential_coach_text prop_get('credential-coach-text') end def credential_coach_text=(val) prop_set('credential-coach-text', val) end def virus_block_page prop_get('virus-block-page') end def virus_block_page=(val) prop_set('virus-block-page', val) end def data_filter_block_page prop_get('data-filter-block-page') end def data_filter_block_page=(val) prop_set('data-filter-block-page', val) end def safe_search_block_page prop_get('safe-search-block-page') end def safe_search_block_page=(val) prop_set('safe-search-block-page', val) end def saml_auth_internal_error_page prop_get('saml-auth-internal-error-page') end def saml_auth_internal_error_page=(val) prop_set('saml-auth-internal-error-page', val) end def mfa_login_page prop_get('mfa-login-page') end def mfa_login_page=(val) prop_set('mfa-login-page', val) end end # class ResponsePage def response_page @subclasses['response-page'] ||= ResponsePage.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"User name"}, "phash"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # User name def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end class UserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'user-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"User name", "autocomplete"=>"yes", "memberof"=>["#local-user-database/user/entry/@name"]}} # User name def member prop_get('member') end # User name def member=(val) prop_set('member', val) end end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Group name"}} # Group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UserGroup def user_group if @create_children @subclasses['user-group'] ||= UserGroup.new(parent_instance: self, create_children: @create_children) else UserGroup.new(parent_instance: self) end end @props={} end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end class OcspResponder < XML::ConfigClass def has_multiple_values? true end def _section :'ocsp-responder' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [:0-9a-zA-Z._-]"}, "host-name"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^([$:a-zA-Z0-9._-])+$", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # alphanumeric string [:0-9a-zA-Z._-] def name prop_get('@name') end def host_name prop_get('host-name') end def host_name=(val) prop_set('host-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OcspResponder def ocsp_responder if @create_children @subclasses['ocsp-responder'] ||= OcspResponder.new(parent_instance: self, create_children: @create_children) else OcspResponder.new(parent_instance: self) end end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end class ForwardTrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-trust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardTrustCertificate def forward_trust_certificate @subclasses['forward-trust-certificate'] ||= ForwardTrustCertificate.new(parent_instance: self, create_children: @create_children) end class ForwardUntrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-untrust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardUntrustCertificate def forward_untrust_certificate @subclasses['forward-untrust-certificate'] ||= ForwardUntrustCertificate.new(parent_instance: self, create_children: @create_children) end class SslExcludeCert < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-exclude-cert' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"SSL Decryption Exclusion entry name"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"512"}, "exclude"=>{"node-type"=>"element", "type"=>"bool"}} # SSL Decryption Exclusion entry name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def exclude prop_get('exclude') end def exclude=(val) prop_set('exclude', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslExcludeCert def ssl_exclude_cert if @create_children @subclasses['ssl-exclude-cert'] ||= SslExcludeCert.new(parent_instance: self, create_children: @create_children) else SslExcludeCert.new(parent_instance: self) end end class RootCaExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca-exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=>["##/predefined/trusted-root-ca/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCaExcludeList def root_ca_exclude_list if @create_children @subclasses['root-ca-exclude-list'] ||= RootCaExcludeList.new(parent_instance: self, create_children: @create_children) else RootCaExcludeList.new(parent_instance: self) end end class TrustedRootCA < XML::ConfigClass def has_multiple_values? true end def _section :'trusted-root-CA' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Trusted Root CA", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry[not(csr)]/@name"]}} # Trusted Root CA def member prop_get('member') end # Trusted Root CA def member=(val) prop_set('member', val) end end # class TrustedRootCA def trusted_root_CA if @create_children @subclasses['trusted-root-CA'] ||= TrustedRootCA.new(parent_instance: self, create_children: @create_children) else TrustedRootCA.new(parent_instance: self) end end class DisabledSslExcludeCertFromPredefined < XML::ConfigClass def has_multiple_values? true end def _section :'disabled-ssl-exclude-cert-from-predefined' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "loose-membership"=>"yes", "max-count"=>"512", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DisabledSslExcludeCertFromPredefined def disabled_ssl_exclude_cert_from_predefined if @create_children @subclasses['disabled-ssl-exclude-cert-from-predefined'] ||= DisabledSslExcludeCertFromPredefined.new(parent_instance: self, create_children: @create_children) else DisabledSslExcludeCertFromPredefined.new(parent_instance: self) end end @props={} end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end class UrlContentTypes < XML::ConfigClass def has_multiple_values? true end def _section :'url-content-types' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "loose-membership"=>"yes", "help-string"=>"content type string", "autocomplete"=>"yes", "memberof"=>[]}} # content type string def member prop_get('member') end # content type string def member=(val) prop_set('member', val) end end # class UrlContentTypes def url_content_types if @create_children @subclasses['url-content-types'] ||= UrlContentTypes.new(parent_instance: self, create_children: @create_children) else UrlContentTypes.new(parent_instance: self) end end class AdminRole < XML::ConfigClass def has_multiple_values? true end def _section :'admin-role' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Role < XML::ConfigClass def has_multiple_values? true end def _section :'role' end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Webui < ConfigClass def has_multiple_values? false end def _section :'webui' end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end class Logs < ConfigClass def has_multiple_values? false end def _section :'logs' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"traffic_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"threat_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"URL Filtering", "help-topic"=>"url_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"WildFire Submissions", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filter_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_match_log", "menu-tree-path"=>"HIP Match", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ip_tag", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"userid_log", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_log", "menu-tree-path"=>"GTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_log", "menu-tree-path"=>"Tunnel Inspection", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_log", "menu-tree-path"=>"SCTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "configuration"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def hipmatch__6 prop_get('hipmatch__6') end def hipmatch__6=(val) prop_set('hipmatch__6', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def configuration prop_get('configuration') end def configuration=(val) prop_set('configuration', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def alarm prop_get('alarm') end def alarm=(val) prop_set('alarm', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end end # class Logs def logs @subclasses['logs'] ||= Logs.new(parent_instance: self, create_children: @create_children) end class AutomatedCorrelationEngine < ConfigClass def has_multiple_values? false end def _section :'automated-correlation-engine' end @props={"correlation-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "correlated-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def correlation_objects prop_get('correlation-objects') end def correlation_objects=(val) prop_set('correlation-objects', val) end def correlated_events prop_get('correlated-events') end def correlated_events=(val) prop_set('correlated-events', val) end end # class AutomatedCorrelationEngine def automated_correlation_engine @subclasses['automated-correlation-engine'] ||= AutomatedCorrelationEngine.new(parent_instance: self, create_children: @create_children) end class PdfReports < ConfigClass def has_multiple_values? false end def _section :'pdf-reports' end @props={"manage-pdf-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage PDF Summary", "help-topic"=>"manage_pdf_summary_report", "node-config-ids"=>"ManagePdfSummary", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pdf-summary-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"PDF Summary Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-activity-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"UserActivityReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saas-application-usage-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Application Usage", "node-config-ids"=>"SaasAppUsageReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "report-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ReportGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email-scheduler"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"report_email", "node-config-ids"=>"EmailScheduler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def manage_pdf_summary prop_get('manage-pdf-summary') end def manage_pdf_summary=(val) prop_set('manage-pdf-summary', val) end def pdf_summary_reports prop_get('pdf-summary-reports') end def pdf_summary_reports=(val) prop_set('pdf-summary-reports', val) end def user_activity_report prop_get('user-activity-report') end def user_activity_report=(val) prop_set('user-activity-report', val) end def saas_application_usage_report prop_get('saas-application-usage-report') end def saas_application_usage_report=(val) prop_set('saas-application-usage-report', val) end def report_groups prop_get('report-groups') end def report_groups=(val) prop_set('report-groups', val) end def email_scheduler prop_get('email-scheduler') end def email_scheduler=(val) prop_set('email-scheduler', val) end end # class PdfReports def pdf_reports @subclasses['pdf-reports'] ||= PdfReports.new(parent_instance: self, create_children: @create_children) end class CustomReports < ConfigClass def has_multiple_values? false end def _section :'custom-reports' end @props={"application-statistics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "prune-on"=>"vpn-disable-mode", "menu-tree-path"=>"HIP Match", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"WildFire Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"Authentication", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def application_statistics prop_get('application-statistics') end def application_statistics=(val) prop_set('application-statistics', val) end def data_filtering_log prop_get('data-filtering-log') end def data_filtering_log=(val) prop_set('data-filtering-log', val) end def threat_log prop_get('threat-log') end def threat_log=(val) prop_set('threat-log', val) end def threat_summary prop_get('threat-summary') end def threat_summary=(val) prop_set('threat-summary', val) end def traffic_log prop_get('traffic-log') end def traffic_log=(val) prop_set('traffic-log', val) end def traffic_summary prop_get('traffic-summary') end def traffic_summary=(val) prop_set('traffic-summary', val) end def url_log prop_get('url-log') end def url_log=(val) prop_set('url-log', val) end def url_summary prop_get('url-summary') end def url_summary=(val) prop_set('url-summary', val) end def hipmatch__9 prop_get('hipmatch__9') end def hipmatch__9=(val) prop_set('hipmatch__9', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def wildfire_log prop_get('wildfire-log') end def wildfire_log=(val) prop_set('wildfire-log', val) end def gtp_log prop_get('gtp-log') end def gtp_log=(val) prop_set('gtp-log', val) end def gtp_summary prop_get('gtp-summary') end def gtp_summary=(val) prop_set('gtp-summary', val) end def tunnel_log prop_get('tunnel-log') end def tunnel_log=(val) prop_set('tunnel-log', val) end def tunnel_summary prop_get('tunnel-summary') end def tunnel_summary=(val) prop_set('tunnel-summary', val) end def sctp_log prop_get('sctp-log') end def sctp_log=(val) prop_set('sctp-log', val) end def sctp_summary prop_get('sctp-summary') end def sctp_summary=(val) prop_set('sctp-summary', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end end # class CustomReports def custom_reports @subclasses['custom-reports'] ||= CustomReports.new(parent_instance: self, create_children: @create_children) end @props={"external-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Logs", "help-topic"=>"external_logs", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "packet-capture"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "app-scope"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "session-browser"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-ip-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Block IP List", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "botnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"botnet_reports", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "view-custom-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Scheduled Custom Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "application-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Application Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Threat Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-filtering-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined URL Filtering Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined Traffic Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined GTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Predefined SCTP Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def external_logs prop_get('external-logs') end def external_logs=(val) prop_set('external-logs', val) end def packet_capture prop_get('packet-capture') end def packet_capture=(val) prop_set('packet-capture', val) end def app_scope prop_get('app-scope') end def app_scope=(val) prop_set('app-scope', val) end def session_browser prop_get('session-browser') end def session_browser=(val) prop_set('session-browser', val) end def block_ip_list prop_get('block-ip-list') end def block_ip_list=(val) prop_set('block-ip-list', val) end def botnet prop_get('botnet') end def botnet=(val) prop_set('botnet', val) end def view_custom_reports prop_get('view-custom-reports') end def view_custom_reports=(val) prop_set('view-custom-reports', val) end def application_reports prop_get('application-reports') end def application_reports=(val) prop_set('application-reports', val) end def threat_reports prop_get('threat-reports') end def threat_reports=(val) prop_set('threat-reports', val) end def url_filtering_reports prop_get('url-filtering-reports') end def url_filtering_reports=(val) prop_set('url-filtering-reports', val) end def traffic_reports prop_get('traffic-reports') end def traffic_reports=(val) prop_set('traffic-reports', val) end def gtp_reports prop_get('gtp-reports') end def gtp_reports=(val) prop_set('gtp-reports', val) end def sctp_reports prop_get('sctp-reports') end def sctp_reports=(val) prop_set('sctp-reports', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Security", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "node-config-ids"=> "DeviceSecurityRules1,DeviceSecurityRules2,DeviceSecurityRules3,DeviceSecurityRules4,DeviceSecurityRules5,DeviceSecurityRules6", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.nat-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"NAT", "help-topic"=>"nat_rules", "node-config-ids"=>"DeviceNATRules1,DeviceNATRules2,DeviceNATRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceQOSRules1,DeviceQOSRules2,DeviceQOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pbf-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.pbf-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Policy Based Forwarding", "node-config-ids"=>"DevicePBFRules1,DevicePBFRules2,DevicePBFRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Decryption", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "node-config-ids"=> "DeviceDecryptionRules1,DeviceDecryptionRules2,DeviceDecryptionRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspect-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "node-config-ids"=> "DeviceTunnelInspectRules1,DeviceTunnelInspectRules2,DeviceTunnelInspectRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Application Override", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "node-config-ids"=> "DeviceAppOverrideRules1,DeviceAppOverrideRules2,DeviceAppOverrideRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "node-config-ids"=> "DeviceAuthenticationRules1,DeviceAuthenticationRules2,DeviceAuthenticationRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DoS Protection", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "node-config-ids"=>"DeviceDOSRules1,DeviceDOSRules2,DeviceDOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN", "help-topic"=>"sdwan_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceSDWANRules1,DeviceSDWANRules2,DeviceSDWANRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "rule-hit-count-reset"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Rule Hit Count Reset", "help-topic"=>"rule_hit_count_reset", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def security_rulebase prop_get('security-rulebase') end def security_rulebase=(val) prop_set('security-rulebase', val) end def nat_rulebase prop_get('nat-rulebase') end def nat_rulebase=(val) prop_set('nat-rulebase', val) end def qos_rulebase prop_get('qos-rulebase') end def qos_rulebase=(val) prop_set('qos-rulebase', val) end def pbf_rulebase prop_get('pbf-rulebase') end def pbf_rulebase=(val) prop_set('pbf-rulebase', val) end def ssl_decryption_rulebase prop_get('ssl-decryption-rulebase') end def ssl_decryption_rulebase=(val) prop_set('ssl-decryption-rulebase', val) end def tunnel_inspect_rulebase prop_get('tunnel-inspect-rulebase') end def tunnel_inspect_rulebase=(val) prop_set('tunnel-inspect-rulebase', val) end def application_override_rulebase prop_get('application-override-rulebase') end def application_override_rulebase=(val) prop_set('application-override-rulebase', val) end def authentication_rulebase prop_get('authentication-rulebase') end def authentication_rulebase=(val) prop_set('authentication-rulebase', val) end def dos_rulebase prop_get('dos-rulebase') end def dos_rulebase=(val) prop_set('dos-rulebase', val) end def sdwan_rulebase prop_get('sdwan-rulebase') end def sdwan_rulebase=(val) prop_set('sdwan-rulebase', val) end def rule_hit_count_reset prop_get('rule-hit-count-reset') end def rule_hit_count_reset=(val) prop_set('rule-hit-count-reset', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end class GlobalProtect__12 < ConfigClass def has_multiple_values? false end def _section :'global-protect__12' end @props={"hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"HIP Objects", "node-config-ids"=>"HIPObjects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"HIP Profiles", "node-config-ids"=>"HIPProfiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def hip_objects prop_get('hip-objects') end def hip_objects=(val) prop_set('hip-objects', val) end def hip_profiles prop_get('hip-profiles') end def hip_profiles=(val) prop_set('hip-profiles', val) end end # class GlobalProtect__12 def global_protect__12 @subclasses['global-protect__12'] ||= GlobalProtect__12.new(parent_instance: self, create_children: @create_children) end class CustomObjects < ConfigClass def has_multiple_values? false end def _section :'custom-objects' end @props={"data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DataPatterns", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "spyware"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "node-config-ids"=>"CustomSpyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "node-config-ids"=>"CustomVulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-category"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Category", "help-topic"=>"custom_url_categories", "node-config-ids"=>"CustomURLCategory", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def data_patterns prop_get('data-patterns') end def data_patterns=(val) prop_set('data-patterns', val) end def spyware prop_get('spyware') end def spyware=(val) prop_set('spyware', val) end def vulnerability prop_get('vulnerability') end def vulnerability=(val) prop_set('vulnerability', val) end def url_category prop_get('url-category') end def url_category=(val) prop_set('url-category', val) end end # class CustomObjects def custom_objects @subclasses['custom-objects'] ||= CustomObjects.new(parent_instance: self, create_children: @create_children) end class SecurityProfiles < ConfigClass def has_multiple_values? false end def _section :'security-profiles' end @props={"antivirus"=> {"node-type"=>"element", "menu-tree-path"=>"Antivirus", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiVirusProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware"=> {"node-type"=>"element", "menu-tree-path"=>"Anti-Spyware", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiSpywareProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"VulnerabilityProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "menu-tree-path"=>"URL Filtering", "skip-display"=>"shared-gateway", "node-config-ids"=>"URLFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"FileBlocking", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis"=> {"node-type"=>"element", "menu-tree-path"=>"WildFire Analysis", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"WildFireAnalysis", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"DataFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection", "node-config-ids"=>"DoSProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"Mobile Network Protection", "node-config-ids"=>"GTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection", "node-config-ids"=>"SCTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def antivirus prop_get('antivirus') end def antivirus=(val) prop_set('antivirus', val) end def anti_spyware prop_get('anti-spyware') end def anti_spyware=(val) prop_set('anti-spyware', val) end def vulnerability_protection prop_get('vulnerability-protection') end def vulnerability_protection=(val) prop_set('vulnerability-protection', val) end def url_filtering prop_get('url-filtering') end def url_filtering=(val) prop_set('url-filtering', val) end def file_blocking prop_get('file-blocking') end def file_blocking=(val) prop_set('file-blocking', val) end def wildfire_analysis prop_get('wildfire-analysis') end def wildfire_analysis=(val) prop_set('wildfire-analysis', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def dos_protection prop_get('dos-protection') end def dos_protection=(val) prop_set('dos-protection', val) end def gtp_protection prop_get('gtp-protection') end def gtp_protection=(val) prop_set('gtp-protection', val) end def sctp_protection prop_get('sctp-protection') end def sctp_protection=(val) prop_set('sctp-protection', val) end end # class SecurityProfiles def security_profiles @subclasses['security-profiles'] ||= SecurityProfiles.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end @props={"decryption-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "menu-tree-path"=>"Decryption Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profile"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "menu-tree-path"=>"Forwarding Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionForwardingProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def decryption_profile prop_get('decryption-profile') end def decryption_profile=(val) prop_set('decryption-profile', val) end def decryption_forwarding_profile prop_get('decryption-forwarding-profile') end def decryption_forwarding_profile=(val) prop_set('decryption-forwarding-profile', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end @props={"sdwan-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Path Quality Profile", "node-config-ids"=>"SDWANProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Quality Profile", "node-config-ids"=>"SDWANSaaSQualityProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-dist-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic Distribution Profile", "node-config-ids"=>"SDWANDistProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Error Correction Profile", "node-config-ids"=>"SDWANErrorCorrectionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def sdwan_profile prop_get('sdwan-profile') end def sdwan_profile=(val) prop_set('sdwan-profile', val) end def sdwan_saas_quality_profile prop_get('sdwan-saas-quality-profile') end def sdwan_saas_quality_profile=(val) prop_set('sdwan-saas-quality-profile', val) end def sdwan_dist_profile prop_get('sdwan-dist-profile') end def sdwan_dist_profile=(val) prop_set('sdwan-dist-profile', val) end def sdwan_error_correction_profile prop_get('sdwan-error-correction-profile') end def sdwan_error_correction_profile=(val) prop_set('sdwan-error-correction-profile', val) end end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Address", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AddressGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Region", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUserGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Application", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationFilter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Service", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ServiceGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Tag", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-block-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Dynamic Lists", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "node-config-ids"=>"DynamicBlockList", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"SecurityProfileGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "node-config-ids"=>"LogForwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "node-config-ids"=>"AuthenticationObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Schedule", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def dynamic_block_lists prop_get('dynamic-block-lists') end def dynamic_block_lists=(val) prop_set('dynamic-block-lists', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding prop_get('log-forwarding') end def log_forwarding=(val) prop_set('log-forwarding', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Routing < ConfigClass def has_multiple_values? false end def _section :'routing' end class RoutingProfiles < ConfigClass def has_multiple_values? false end def _section :'routing-profiles' end @props={"bgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"routing_profiles_bgp", "menu-tree-path"=>"BGP", "node-config-ids"=>"RoutingProfilesBGP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def bgp prop_get('bgp') end def bgp=(val) prop_set('bgp', val) end end # class RoutingProfiles def routing_profiles @subclasses['routing-profiles'] ||= RoutingProfiles.new(parent_instance: self, create_children: @create_children) end @props={"logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"logical_routers", "node-config-ids"=>"LogicalRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end end # class Routing def routing @subclasses['routing'] ||= Routing.new(parent_instance: self, create_children: @create_children) end class GlobalProtect__11 < ConfigClass def has_multiple_values? false end def _section :'global-protect__11' end @props={"portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"portals_globalprotect", "node-config-ids"=>"GlobalProtectPortal", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gateways_globalprotect", "node-config-ids"=>"GlobalProtectGatewayVSYS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mdm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"MDM", "help-topic"=>"mdm_globalprotect", "node-config-ids"=>"GlobalProtectMDM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_apps", "node-config-ids"=>"GlobalProtectClientlessApp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_app_groups", "node-config-ids"=>"GlobalProtectClientlessAppGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def portals prop_get('portals') end def portals=(val) prop_set('portals', val) end def gateways prop_get('gateways') end def gateways=(val) prop_set('gateways', val) end def mdm prop_get('mdm') end def mdm=(val) prop_set('mdm', val) end def clientless_apps prop_get('clientless-apps') end def clientless_apps=(val) prop_set('clientless-apps', val) end def clientless_app_groups prop_get('clientless-app-groups') end def clientless_app_groups=(val) prop_set('clientless-app-groups', val) end end # class GlobalProtect__11 def global_protect__11 @subclasses['global-protect__11'] ||= GlobalProtect__11.new(parent_instance: self, create_children: @create_children) end class NetworkProfiles < ConfigClass def has_multiple_values? false end def _section :'network-profiles' end @props={"gp-app-ipsec-crypto__1"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.gp-app-ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GpAppIPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateways__2"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-gateways-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IKE Gateways", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKEGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto__3"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ipsec-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "menu-tree-path"=>"IPSec Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecCrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto__4"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.ike-crypto-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "menu-tree-path"=>"IKE Crypto", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IKECrypto", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.tunnel-monitor-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Monitor", "help-topic"=>"tunnel_monitor_profiles", "node-config-ids"=>"MonitorProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-mgmt"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.network.network-profiles.interface-mgmt-disable=True", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "node-config-ids"=>"InterfaceMgmt", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "node-config-ids"=>"ZoneProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Profile", "node-config-ids"=>"QoSProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Profile", "node-config-ids"=>"LLDPProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Profile", "node-config-ids"=>"BFDProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def gp_app_ipsec_crypto__1 prop_get('gp-app-ipsec-crypto__1') end def gp_app_ipsec_crypto__1=(val) prop_set('gp-app-ipsec-crypto__1', val) end def ike_gateways__2 prop_get('ike-gateways__2') end def ike_gateways__2=(val) prop_set('ike-gateways__2', val) end def ipsec_crypto__3 prop_get('ipsec-crypto__3') end def ipsec_crypto__3=(val) prop_set('ipsec-crypto__3', val) end def ike_crypto__4 prop_get('ike-crypto__4') end def ike_crypto__4=(val) prop_set('ike-crypto__4', val) end def tunnel_monitor prop_get('tunnel-monitor') end def tunnel_monitor=(val) prop_set('tunnel-monitor', val) end def interface_mgmt prop_get('interface-mgmt') end def interface_mgmt=(val) prop_set('interface-mgmt', val) end def zone_protection prop_get('zone-protection') end def zone_protection=(val) prop_set('zone-protection', val) end def qos_profile prop_get('qos-profile') end def qos_profile=(val) prop_set('qos-profile', val) end def lldp_profile prop_get('lldp-profile') end def lldp_profile=(val) prop_set('lldp-profile', val) end def bfd_profile prop_get('bfd-profile') end def bfd_profile=(val) prop_set('bfd-profile', val) end end # class NetworkProfiles def network_profiles @subclasses['network-profiles'] ||= NetworkProfiles.new(parent_instance: self, create_children: @create_children) end @props={"interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "node-config-ids"=>"Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Zones", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.vlans-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "node-config-ids"=>"VLAN", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualWires", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.network.vm.virtual-routers-disable=True", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"VirtualRouter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__7"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.ipsec-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"IPSec Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"IPSecTunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__8"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.vm.network.gre-tunnels-disable=True", "type"=>"enum", "menu-tree-path"=>"GRE Tunnels", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "node-config-ids"=>"GRETunnel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dhcp-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP", "node-config-ids"=>"DHCP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxy"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.network.dns-proxy-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxy", "node-config-ids"=>"DNSProxy", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "node-config-ids"=>"QoSInterface", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "node-config-ids"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profile", "node-config-ids"=>"SDWANInterfaceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def ipsec_tunnels__7 prop_get('ipsec-tunnels__7') end def ipsec_tunnels__7=(val) prop_set('ipsec-tunnels__7', val) end def gre_tunnels__8 prop_get('gre-tunnels__8') end def gre_tunnels__8=(val) prop_set('gre-tunnels__8', val) end def dhcp prop_get('dhcp') end def dhcp=(val) prop_set('dhcp', val) end def dns_proxy prop_get('dns-proxy') end def dns_proxy=(val) prop_set('dns-proxy', val) end def qos prop_get('qos') end def qos=(val) prop_set('qos', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def sdwan_interface_profile prop_get('sdwan-interface-profile') end def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ocsp-responder"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"OCSP Responder", "node-config-ids"=>"OCSPResponder", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-exclusion"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL Decryption Exclusion", "node-config-ids"=>"SslDecryptionExclusion", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ocsp_responder prop_get('ocsp-responder') end def ocsp_responder=(val) prop_set('ocsp-responder', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssl_decryption_exclusion prop_get('ssl-decryption-exclusion') end def ssl_decryption_exclusion=(val) prop_set('ssl-decryption-exclusion', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log_settings", "node-config-ids"=> "LogSettingsSystem,LogSettingsConfig,LogSettingsUserID,LogSettingsHIPMatch,LogSettingsCorrelation,LogSettingsGlobalProtect LogSettingsCCAlarms", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "iptag__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IP-Tag", "help-topic"=>"ip_tag_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "cc-alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Alarms", "help-topic"=>"alarm_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "manage-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage Logs", "skip-menu-tree-display"=>"template", "help-topic"=>"manage_logs_log_settings", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def iptag__3 prop_get('iptag__3') end def iptag__3=(val) prop_set('iptag__3', val) end def user_id__4 prop_get('user-id__4') end def user_id__4=(val) prop_set('user-id__4', val) end def hipmatch__5 prop_get('hipmatch__5') end def hipmatch__5=(val) prop_set('hipmatch__5', val) end def globalprotect__6 prop_get('globalprotect__6') end def globalprotect__6=(val) prop_set('globalprotect__6', val) end def correlation__7 prop_get('correlation__7') end def correlation__7=(val) prop_set('correlation__7', val) end def cc_alarm prop_get('cc-alarm') end def cc_alarm=(val) prop_set('cc-alarm', val) end def manage_log prop_get('manage-log') end def manage_log=(val) prop_set('manage-log', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "menu-tree-path"=>"SNMP Trap", "node-config-ids"=>"ServerProfileSNMPTrap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "netflow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"netflow_settings", "node-config-ids"=>"ServerProfileNetflow", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "node-config-ids"=>"ServerProfileRadius", "menu-tree-path"=>"RADIUS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "node-config-ids"=>"ServerProfileTacacs", "menu-tree-path"=>"TACACS+", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "node-config-ids"=>"ServerProfileKerberos", "skip-display"=>"fips-mode,cc-only-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.device.dns-disable=True", "skip-display"=>"single-vsys-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_dns", "menu-tree-path"=>"DNS", "node-config-ids"=>"ServerProfileDNS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mfa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_mfa", "menu-tree-path"=>"Multi Factor Authentication", "node-config-ids"=>"ServerProfileMFA", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def netflow prop_get('netflow') end def netflow=(val) prop_set('netflow', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end def dns prop_get('dns') end def dns=(val) prop_set('dns', val) end def mfa prop_get('mfa') end def mfa=(val) prop_set('mfa', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end @props={"users"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_users", "node-config-ids"=>"LocalUsers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_user_groups", "node-config-ids"=>"LocalUserGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def users prop_get('users') end def users=(val) prop_set('users', val) end def user_groups prop_get('user-groups') end def user_groups=(val) prop_set('user-groups', val) end end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end @props={"high-availability"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.device.high-availability-disable=True", "node-config-ids"=>"HASetup", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-fwd-card"=> {"node-type"=>"element", "node-config-ids"=>"LFCInterface", "menu-tree-path"=>"Log Forwarding Card", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "config-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"admin_accounts", "node-config-ids"=>"Administrator", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "admin-roles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AdminRoleHandler", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "access-domain"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"AccessDomain", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_user_id", "node-config-ids"=> "UserIdCollector,ServerMonitor,IncludeExcludeNetwork,UserIdConnSecurity,UserIdAgent,TSAgent,GroupMapping", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "help-topic"=>"data_redistribution", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=> "RDAgent,DataRedistributionCollector,DataRedistributionIPUserIncludeExcludeNetwork,DataRedistributionIPTagIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-quarantine"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Device Quarantine", "help-topic"=>"device_quarantine", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vm-info-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VM Information Sources", "node-config-ids"=>"VMInformationSources", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "troubleshooting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Troubleshooting", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"VirtualSystem", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "shared-gateways"=> {"node-type"=>"element", "optional"=>"yes", "skip-display"=>"single-vsys-mode", "type"=>"enum", "node-config-ids"=>"SharedGateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-pages"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Response Pages", "node-config-ids"=>"ResponsePageTopLevel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scheduled-log-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_export", "node-config-ids"=>"ScheduledLogExport", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "software"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "global-protect-client__25"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Client", "prune-on"=>"vpn-disable-mode", "skip-display"=>"vpn-disable-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-updates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUpdates", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "plugins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "licenses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"license", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "support"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "master-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Master Key and Diagnostics", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-recommendation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policy_recommendation", "menu-tree-path"=>"Policy Recommendation", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def high_availability prop_get('high-availability') end def high_availability=(val) prop_set('high-availability', val) end def log_fwd_card prop_get('log-fwd-card') end def log_fwd_card=(val) prop_set('log-fwd-card', val) end def config_audit prop_get('config-audit') end def config_audit=(val) prop_set('config-audit', val) end def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def admin_roles prop_get('admin-roles') end def admin_roles=(val) prop_set('admin-roles', val) end def access_domain prop_get('access-domain') end def access_domain=(val) prop_set('access-domain', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def device_quarantine prop_get('device-quarantine') end def device_quarantine=(val) prop_set('device-quarantine', val) end def vm_info_source prop_get('vm-info-source') end def vm_info_source=(val) prop_set('vm-info-source', val) end def troubleshooting prop_get('troubleshooting') end def troubleshooting=(val) prop_set('troubleshooting', val) end def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end def shared_gateways prop_get('shared-gateways') end def shared_gateways=(val) prop_set('shared-gateways', val) end def block_pages prop_get('block-pages') end def block_pages=(val) prop_set('block-pages', val) end def scheduled_log_export prop_get('scheduled-log-export') end def scheduled_log_export=(val) prop_set('scheduled-log-export', val) end def software prop_get('software') end def software=(val) prop_set('software', val) end def global_protect_client__25 prop_get('global-protect-client__25') end def global_protect_client__25=(val) prop_set('global-protect-client__25', val) end def dynamic_updates prop_get('dynamic-updates') end def dynamic_updates=(val) prop_set('dynamic-updates', val) end def plugins prop_get('plugins') end def plugins=(val) prop_set('plugins', val) end def licenses prop_get('licenses') end def licenses=(val) prop_set('licenses', val) end def support prop_get('support') end def support=(val) prop_set('support', val) end def master_key prop_get('master-key') end def master_key=(val) prop_set('master-key', val) end def policy_recommendation prop_get('policy-recommendation') end def policy_recommendation=(val) prop_set('policy-recommendation', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Operations < ConfigClass def has_multiple_values? false end def _section :'operations' end @props={"reboot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-tech-support-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-stats-dump-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "download-core-files"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def reboot prop_get('reboot') end def reboot=(val) prop_set('reboot', val) end def generate_tech_support_file prop_get('generate-tech-support-file') end def generate_tech_support_file=(val) prop_set('generate-tech-support-file', val) end def generate_stats_dump_file prop_get('generate-stats-dump-file') end def generate_stats_dump_file=(val) prop_set('generate-stats-dump-file', val) end def download_core_files prop_get('download-core-files') end def download_core_files=(val) prop_set('download-core-files', val) end end # class Operations def operations @subclasses['operations'] ||= Operations.new(parent_instance: self, create_children: @create_children) end class Privacy < ConfigClass def has_multiple_values? false end def _section :'privacy' end @props={"show-full-ip-addresses"=> {"node-type"=>"element", "menu-tree-path"=>"Show Full IP Addresses", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "show-user-names-in-logs-and-reports"=> {"node-type"=>"element", "menu-tree-path"=>"Show Username In Logs And Reports", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-pcap-files"=> {"node-type"=>"element", "menu-tree-path"=>"View PCAP Files", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def show_full_ip_addresses prop_get('show-full-ip-addresses') end def show_full_ip_addresses=(val) prop_set('show-full-ip-addresses', val) end def show_user_names_in_logs_and_reports prop_get('show-user-names-in-logs-and-reports') end def show_user_names_in_logs_and_reports=(val) prop_set('show-user-names-in-logs-and-reports', val) end def view_pcap_files prop_get('view-pcap-files') end def view_pcap_files=(val) prop_set('view-pcap-files', val) end end # class Privacy def privacy @subclasses['privacy'] ||= Privacy.new(parent_instance: self, create_children: @create_children) end class Save < ConfigClass def has_multiple_values? false end def _section :'save' end @props={"partial-save"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "save-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def partial_save prop_get('partial-save') end def partial_save=(val) prop_set('partial-save', val) end def save_for_other_admins prop_get('save-for-other-admins') end def save_for_other_admins=(val) prop_set('save-for-other-admins', val) end end # class Save def save @subclasses['save'] ||= Save.new(parent_instance: self, create_children: @create_children) end class Commit < ConfigClass def has_multiple_values? false end def _section :'commit' end @props={"device"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def device prop_get('device') end def device=(val) prop_set('device', val) end def commit_for_other_admins prop_get('commit-for-other-admins') end def commit_for_other_admins=(val) prop_set('commit-for-other-admins', val) end end # class Commit def commit @subclasses['commit'] ||= Commit.new(parent_instance: self, create_children: @create_children) end class Global < ConfigClass def has_multiple_values? false end def _section :'global' end @props={"system-alarms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_alarms", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def system_alarms prop_get('system-alarms') end def system_alarms=(val) prop_set('system-alarms', val) end end # class Global def global @subclasses['global'] ||= Global.new(parent_instance: self, create_children: @create_children) end @props={"dashboard"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "acc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"ACC", "prune-on-sdb"=>"cfg.vm-license-type=vm50l", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tasks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def dashboard prop_get('dashboard') end def dashboard=(val) prop_set('dashboard', val) end def acc prop_get('acc') end def acc=(val) prop_set('acc', val) end def tasks prop_get('tasks') end def tasks=(val) prop_set('tasks', val) end end # class Webui def webui @subclasses['webui'] ||= Webui.new(parent_instance: self, create_children: @create_children) end class Xmlapi < ConfigClass def has_multiple_values? false end def _section :'xmlapi' end @props={"report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Report", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Configuration", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "op"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Operational Requests", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Commit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IoT Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Export", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "import"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Import", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def report prop_get('report') end def report=(val) prop_set('report', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def op prop_get('op') end def op=(val) prop_set('op', val) end def commit prop_get('commit') end def commit=(val) prop_set('commit', val) end def user_id prop_get('user-id') end def user_id=(val) prop_set('user-id', val) end def iot prop_get('iot') end def iot=(val) prop_set('iot', val) end def export prop_get('export') end def export=(val) prop_set('export', val) end def import prop_get('import') end def import=(val) prop_set('import', val) end end # class Xmlapi def xmlapi @subclasses['xmlapi'] ||= Xmlapi.new(parent_instance: self, create_children: @create_children) end class Restapi < ConfigClass def has_multiple_values? false end def _section :'restapi' end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"GlobalProtect HIP Objects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"GlobalProtect HIP Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "external-dynamic-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-spyware-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-vulnerability-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-url-categories"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"custom_url_categories", "menu-tree-path"=>"URL Category", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "antivirus-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Filtering Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"WildFire Analysis Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"GTP Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection Secuirty Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-enforcements"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-path-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-path-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Path Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-saas-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Saas Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-traffic-distribution-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-traffic-distribution-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Traffic Distribution Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-error-correction-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Error Correction Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def globalprotect_hip_objects prop_get('globalprotect-hip-objects') end def globalprotect_hip_objects=(val) prop_set('globalprotect-hip-objects', val) end def globalprotect_hip_profiles prop_get('globalprotect-hip-profiles') end def globalprotect_hip_profiles=(val) prop_set('globalprotect-hip-profiles', val) end def external_dynamic_lists prop_get('external-dynamic-lists') end def external_dynamic_lists=(val) prop_set('external-dynamic-lists', val) end def custom_data_patterns prop_get('custom-data-patterns') end def custom_data_patterns=(val) prop_set('custom-data-patterns', val) end def custom_spyware_signatures prop_get('custom-spyware-signatures') end def custom_spyware_signatures=(val) prop_set('custom-spyware-signatures', val) end def custom_vulnerability_signatures prop_get('custom-vulnerability-signatures') end def custom_vulnerability_signatures=(val) prop_set('custom-vulnerability-signatures', val) end def custom_url_categories prop_get('custom-url-categories') end def custom_url_categories=(val) prop_set('custom-url-categories', val) end def antivirus_security_profiles prop_get('antivirus-security-profiles') end def antivirus_security_profiles=(val) prop_set('antivirus-security-profiles', val) end def anti_spyware_security_profiles prop_get('anti-spyware-security-profiles') end def anti_spyware_security_profiles=(val) prop_set('anti-spyware-security-profiles', val) end def vulnerability_protection_security_profiles prop_get('vulnerability-protection-security-profiles') end def vulnerability_protection_security_profiles=(val) prop_set('vulnerability-protection-security-profiles', val) end def url_filtering_security_profiles prop_get('url-filtering-security-profiles') end def url_filtering_security_profiles=(val) prop_set('url-filtering-security-profiles', val) end def file_blocking_security_profiles prop_get('file-blocking-security-profiles') end def file_blocking_security_profiles=(val) prop_set('file-blocking-security-profiles', val) end def wildfire_analysis_security_profiles prop_get('wildfire-analysis-security-profiles') end def wildfire_analysis_security_profiles=(val) prop_set('wildfire-analysis-security-profiles', val) end def data_filtering_security_profiles prop_get('data-filtering-security-profiles') end def data_filtering_security_profiles=(val) prop_set('data-filtering-security-profiles', val) end def dos_protection_security_profiles prop_get('dos-protection-security-profiles') end def dos_protection_security_profiles=(val) prop_set('dos-protection-security-profiles', val) end def gtp_protection_security_profiles prop_get('gtp-protection-security-profiles') end def gtp_protection_security_profiles=(val) prop_set('gtp-protection-security-profiles', val) end def sctp_protection_security_profiles prop_get('sctp-protection-security-profiles') end def sctp_protection_security_profiles=(val) prop_set('sctp-protection-security-profiles', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding_profiles prop_get('log-forwarding-profiles') end def log_forwarding_profiles=(val) prop_set('log-forwarding-profiles', val) end def authentication_enforcements prop_get('authentication-enforcements') end def authentication_enforcements=(val) prop_set('authentication-enforcements', val) end def decryption_profiles prop_get('decryption-profiles') end def decryption_profiles=(val) prop_set('decryption-profiles', val) end def decryption_forwarding_profiles prop_get('decryption-forwarding-profiles') end def decryption_forwarding_profiles=(val) prop_set('decryption-forwarding-profiles', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end def sdwan_path_quality_profiles prop_get('sdwan-path-quality-profiles') end def sdwan_path_quality_profiles=(val) prop_set('sdwan-path-quality-profiles', val) end def sdwan_saas_quality_profiles prop_get('sdwan-saas-quality-profiles') end def sdwan_saas_quality_profiles=(val) prop_set('sdwan-saas-quality-profiles', val) end def sdwan_traffic_distribution_profiles prop_get('sdwan-traffic-distribution-profiles') end def sdwan_traffic_distribution_profiles=(val) prop_set('sdwan-traffic-distribution-profiles', val) end def sdwan_error_correction_profiles prop_get('sdwan-error-correction-profiles') end def sdwan_error_correction_profiles=(val) prop_set('sdwan-error-correction-profiles', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"nat_rules", "menu-tree-path"=>"NAT Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "menu-tree-path"=>"QoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-based-forwarding-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspection-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "menu-tree-path"=>"DoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"sdwan-rules", "menu-tree-path"=>"SD-WAN Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def security_rules prop_get('security-rules') end def security_rules=(val) prop_set('security-rules', val) end def nat_rules prop_get('nat-rules') end def nat_rules=(val) prop_set('nat-rules', val) end def qos_rules prop_get('qos-rules') end def qos_rules=(val) prop_set('qos-rules', val) end def policy_based_forwarding_rules prop_get('policy-based-forwarding-rules') end def policy_based_forwarding_rules=(val) prop_set('policy-based-forwarding-rules', val) end def decryption_rules prop_get('decryption-rules') end def decryption_rules=(val) prop_set('decryption-rules', val) end def tunnel_inspection_rules prop_get('tunnel-inspection-rules') end def tunnel_inspection_rules=(val) prop_set('tunnel-inspection-rules', val) end def application_override_rules prop_get('application-override-rules') end def application_override_rules=(val) prop_set('application-override-rules', val) end def authentication_rules prop_get('authentication-rules') end def authentication_rules=(val) prop_set('authentication-rules', val) end def dos_rules prop_get('dos-rules') end def dos_rules=(val) prop_set('dos-rules', val) end def sdwan_rules prop_get('sdwan-rules') end def sdwan_rules=(val) prop_set('sdwan-rules', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end @props={"aggregate-ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ethernet-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "menu-tree-path"=>"VLAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "loopback-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"network_interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vlans"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VLANs", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-wires"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "virtual-routers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "logical-routers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bgp-routing-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BGP Routing Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-tunnels__12"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gre-tunnels__13"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GRE Tunnels", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-servers"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dhcp-relays"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DHCP Relays", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns-proxies"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DNS Proxies", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Portals", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Gateways", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-mdm-servers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect MDM Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless Apps", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless App Groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-ipsec-crypto-network-profiles__24"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"GlobalProtect IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-gateway-network-profiles__25"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Gateway Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ipsec-crypto-network-profiles__26"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ipsec_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IPSec Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ike-crypto-network-profiles__27"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "prune-on"=>"vpn-disable-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ike_crypto_profiles", "skip-display"=>"vpn-disable-mode", "menu-tree-path"=>"IKE Crypto Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-monitor-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_monitor_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interface-management-network-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"interface_management_profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "zone-protection-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"zone_protection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "lldp-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"LLDP Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "bfd-network-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"BFD Network Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interfaces", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def aggregate_ethernet_interfaces prop_get('aggregate-ethernet-interfaces') end def aggregate_ethernet_interfaces=(val) prop_set('aggregate-ethernet-interfaces', val) end def ethernet_interfaces prop_get('ethernet-interfaces') end def ethernet_interfaces=(val) prop_set('ethernet-interfaces', val) end def vlan_interfaces prop_get('vlan-interfaces') end def vlan_interfaces=(val) prop_set('vlan-interfaces', val) end def loopback_interfaces prop_get('loopback-interfaces') end def loopback_interfaces=(val) prop_set('loopback-interfaces', val) end def tunnel_interfaces prop_get('tunnel-interfaces') end def tunnel_interfaces=(val) prop_set('tunnel-interfaces', val) end def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def vlans prop_get('vlans') end def vlans=(val) prop_set('vlans', val) end def virtual_wires prop_get('virtual-wires') end def virtual_wires=(val) prop_set('virtual-wires', val) end def virtual_routers prop_get('virtual-routers') end def virtual_routers=(val) prop_set('virtual-routers', val) end def logical_routers prop_get('logical-routers') end def logical_routers=(val) prop_set('logical-routers', val) end def bgp_routing_profiles prop_get('bgp-routing-profiles') end def bgp_routing_profiles=(val) prop_set('bgp-routing-profiles', val) end def ipsec_tunnels__12 prop_get('ipsec-tunnels__12') end def ipsec_tunnels__12=(val) prop_set('ipsec-tunnels__12', val) end def gre_tunnels__13 prop_get('gre-tunnels__13') end def gre_tunnels__13=(val) prop_set('gre-tunnels__13', val) end def dhcp_servers prop_get('dhcp-servers') end def dhcp_servers=(val) prop_set('dhcp-servers', val) end def dhcp_relays prop_get('dhcp-relays') end def dhcp_relays=(val) prop_set('dhcp-relays', val) end def dns_proxies prop_get('dns-proxies') end def dns_proxies=(val) prop_set('dns-proxies', val) end def globalprotect_portals prop_get('globalprotect-portals') end def globalprotect_portals=(val) prop_set('globalprotect-portals', val) end def globalprotect_gateways prop_get('globalprotect-gateways') end def globalprotect_gateways=(val) prop_set('globalprotect-gateways', val) end def globalprotect_mdm_servers prop_get('globalprotect-mdm-servers') end def globalprotect_mdm_servers=(val) prop_set('globalprotect-mdm-servers', val) end def globalprotect_clientless_apps prop_get('globalprotect-clientless-apps') end def globalprotect_clientless_apps=(val) prop_set('globalprotect-clientless-apps', val) end def globalprotect_clientless_app_groups prop_get('globalprotect-clientless-app-groups') end def globalprotect_clientless_app_groups=(val) prop_set('globalprotect-clientless-app-groups', val) end def qos_interfaces prop_get('qos-interfaces') end def qos_interfaces=(val) prop_set('qos-interfaces', val) end def lldp prop_get('lldp') end def lldp=(val) prop_set('lldp', val) end def globalprotect_ipsec_crypto_network_profiles__24 prop_get('globalprotect-ipsec-crypto-network-profiles__24') end def globalprotect_ipsec_crypto_network_profiles__24=(val) prop_set('globalprotect-ipsec-crypto-network-profiles__24', val) end def ike_gateway_network_profiles__25 prop_get('ike-gateway-network-profiles__25') end def ike_gateway_network_profiles__25=(val) prop_set('ike-gateway-network-profiles__25', val) end def ipsec_crypto_network_profiles__26 prop_get('ipsec-crypto-network-profiles__26') end def ipsec_crypto_network_profiles__26=(val) prop_set('ipsec-crypto-network-profiles__26', val) end def ike_crypto_network_profiles__27 prop_get('ike-crypto-network-profiles__27') end def ike_crypto_network_profiles__27=(val) prop_set('ike-crypto-network-profiles__27', val) end def tunnel_monitor_network_profiles prop_get('tunnel-monitor-network-profiles') end def tunnel_monitor_network_profiles=(val) prop_set('tunnel-monitor-network-profiles', val) end def interface_management_network_profiles prop_get('interface-management-network-profiles') end def interface_management_network_profiles=(val) prop_set('interface-management-network-profiles', val) end def zone_protection_network_profiles prop_get('zone-protection-network-profiles') end def zone_protection_network_profiles=(val) prop_set('zone-protection-network-profiles', val) end def qos_network_profiles prop_get('qos-network-profiles') end def qos_network_profiles=(val) prop_set('qos-network-profiles', val) end def lldp_network_profiles prop_get('lldp-network-profiles') end def lldp_network_profiles=(val) prop_set('lldp-network-profiles', val) end def bfd_network_profiles prop_get('bfd-network-profiles') end def bfd_network_profiles=(val) prop_set('bfd-network-profiles', val) end def sdwan_interfaces prop_get('sdwan-interfaces') end def sdwan_interfaces=(val) prop_set('sdwan-interfaces', val) end def sdwan_interface_profiles prop_get('sdwan-interface-profiles') end def sdwan_interface_profiles=(val) prop_set('sdwan-interface-profiles', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end @props={} end # class Restapi def restapi @subclasses['restapi'] ||= Restapi.new(parent_instance: self, create_children: @create_children) end @props={"cli"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"superuser"}, {"value"=>"superreader"}, {"value"=>"deviceadmin"}, {"value"=>"devicereader"}]}} def cli prop_get('cli') end def cli=(val) prop_set('cli', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Vsys__2 < ConfigClass def has_multiple_values? false end def _section :'vsys__2' end class Webui < ConfigClass def has_multiple_values? false end def _section :'webui' end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end class Logs < ConfigClass def has_multiple_values? false end def _section :'logs' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"traffic_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"threat_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"URL Filtering", "help-topic"=>"url_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"WildFire Submissions", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filter_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_match_log", "menu-tree-path"=>"HIP Match", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"ip_tag", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"userid_log", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_log", "menu-tree-path"=>"GTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"tunnel_log", "menu-tree-path"=>"Tunnel Inspection", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_log", "menu-tree-path"=>"SCTP", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication_log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def hipmatch__6 prop_get('hipmatch__6') end def hipmatch__6=(val) prop_set('hipmatch__6', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end end # class Logs def logs @subclasses['logs'] ||= Logs.new(parent_instance: self, create_children: @create_children) end class AutomatedCorrelationEngine < ConfigClass def has_multiple_values? false end def _section :'automated-correlation-engine' end @props={"correlation-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "correlated-events"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def correlation_objects prop_get('correlation-objects') end def correlation_objects=(val) prop_set('correlation-objects', val) end def correlated_events prop_get('correlated-events') end def correlated_events=(val) prop_set('correlated-events', val) end end # class AutomatedCorrelationEngine def automated_correlation_engine @subclasses['automated-correlation-engine'] ||= AutomatedCorrelationEngine.new(parent_instance: self, create_children: @create_children) end class PdfReports < ConfigClass def has_multiple_values? false end def _section :'pdf-reports' end @props={"manage-pdf-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Manage PDF Summary", "help-topic"=>"manage_pdf_summary_report", "node-config-ids"=>"ManagePdfSummary", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pdf-summary-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"PDF Summary Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-activity-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"UserActivityReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saas-application-usage-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Application Usage", "node-config-ids"=>"SaasAppUsageReport", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "report-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ReportGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email-scheduler"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"report_email", "node-config-ids"=>"EmailScheduler", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def manage_pdf_summary prop_get('manage-pdf-summary') end def manage_pdf_summary=(val) prop_set('manage-pdf-summary', val) end def pdf_summary_reports prop_get('pdf-summary-reports') end def pdf_summary_reports=(val) prop_set('pdf-summary-reports', val) end def user_activity_report prop_get('user-activity-report') end def user_activity_report=(val) prop_set('user-activity-report', val) end def saas_application_usage_report prop_get('saas-application-usage-report') end def saas_application_usage_report=(val) prop_set('saas-application-usage-report', val) end def report_groups prop_get('report-groups') end def report_groups=(val) prop_set('report-groups', val) end def email_scheduler prop_get('email-scheduler') end def email_scheduler=(val) prop_set('email-scheduler', val) end end # class PdfReports def pdf_reports @subclasses['pdf-reports'] ||= PdfReports.new(parent_instance: self, create_children: @create_children) end class CustomReports < ConfigClass def has_multiple_values? false end def _section :'custom-reports' end @props={"application-statistics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "data-filtering-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "threat-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "traffic-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "url-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"URL Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "hipmatch__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "prune-on"=>"vpn-disable-mode", "menu-tree-path"=>"HIP Match", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GlobalProtect", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "wildfire-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"WildFire Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "gtp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"GTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tunnel-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "sctp-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"SCTP Summary", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"IP-Tag", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"User-ID", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"yes", "menu-tree-path"=>"Authentication", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def application_statistics prop_get('application-statistics') end def application_statistics=(val) prop_set('application-statistics', val) end def data_filtering_log prop_get('data-filtering-log') end def data_filtering_log=(val) prop_set('data-filtering-log', val) end def threat_log prop_get('threat-log') end def threat_log=(val) prop_set('threat-log', val) end def threat_summary prop_get('threat-summary') end def threat_summary=(val) prop_set('threat-summary', val) end def traffic_log prop_get('traffic-log') end def traffic_log=(val) prop_set('traffic-log', val) end def traffic_summary prop_get('traffic-summary') end def traffic_summary=(val) prop_set('traffic-summary', val) end def url_log prop_get('url-log') end def url_log=(val) prop_set('url-log', val) end def url_summary prop_get('url-summary') end def url_summary=(val) prop_set('url-summary', val) end def hipmatch__9 prop_get('hipmatch__9') end def hipmatch__9=(val) prop_set('hipmatch__9', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def wildfire_log prop_get('wildfire-log') end def wildfire_log=(val) prop_set('wildfire-log', val) end def gtp_log prop_get('gtp-log') end def gtp_log=(val) prop_set('gtp-log', val) end def gtp_summary prop_get('gtp-summary') end def gtp_summary=(val) prop_set('gtp-summary', val) end def tunnel_log prop_get('tunnel-log') end def tunnel_log=(val) prop_set('tunnel-log', val) end def tunnel_summary prop_get('tunnel-summary') end def tunnel_summary=(val) prop_set('tunnel-summary', val) end def sctp_log prop_get('sctp-log') end def sctp_log=(val) prop_set('sctp-log', val) end def sctp_summary prop_get('sctp-summary') end def sctp_summary=(val) prop_set('sctp-summary', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end end # class CustomReports def custom_reports @subclasses['custom-reports'] ||= CustomReports.new(parent_instance: self, create_children: @create_children) end @props={"external-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Logs", "help-topic"=>"external_logs", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "app-scope"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "session-browser"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-ip-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Block IP List", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "view-custom-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"View Scheduled Custom Reports", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def external_logs prop_get('external-logs') end def external_logs=(val) prop_set('external-logs', val) end def app_scope prop_get('app-scope') end def app_scope=(val) prop_set('app-scope', val) end def session_browser prop_get('session-browser') end def session_browser=(val) prop_set('session-browser', val) end def block_ip_list prop_get('block-ip-list') end def block_ip_list=(val) prop_set('block-ip-list', val) end def view_custom_reports prop_get('view-custom-reports') end def view_custom_reports=(val) prop_set('view-custom-reports', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Security", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "node-config-ids"=> "DeviceSecurityRules1,DeviceSecurityRules2,DeviceSecurityRules3,DeviceSecurityRules4,DeviceSecurityRules5,DeviceSecurityRules6", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.nat-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"NAT", "help-topic"=>"nat_rules", "node-config-ids"=>"DeviceNATRules1,DeviceNATRules2,DeviceNATRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"QoS", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceQOSRules1,DeviceQOSRules2,DeviceQOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "pbf-rulebase"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.policies.pbf-rulebase-disable=True", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Policy Based Forwarding", "node-config-ids"=>"DevicePBFRules1,DevicePBFRules2,DevicePBFRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Decryption", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "node-config-ids"=> "DeviceDecryptionRules1,DeviceDecryptionRules2,DeviceDecryptionRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspect-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Tunnel Inspection", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "node-config-ids"=> "DeviceTunnelInspectRules1,DeviceTunnelInspectRules2,DeviceTunnelInspectRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Application Override", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "node-config-ids"=> "DeviceAppOverrideRules1,DeviceAppOverrideRules2,DeviceAppOverrideRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Authentication", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "node-config-ids"=> "DeviceAuthenticationRules1,DeviceAuthenticationRules2,DeviceAuthenticationRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"DoS Protection", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "node-config-ids"=>"DeviceDOSRules1,DeviceDOSRules2,DeviceDOSRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rulebase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN", "help-topic"=>"sdwan_policies", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceSDWANRules1,DeviceSDWANRules2,DeviceSDWANRules3", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "rule-hit-count-reset"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Rule Hit Count Reset", "help-topic"=>"rule_hit_count_reset", "skip-display"=>"yes", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def security_rulebase prop_get('security-rulebase') end def security_rulebase=(val) prop_set('security-rulebase', val) end def nat_rulebase prop_get('nat-rulebase') end def nat_rulebase=(val) prop_set('nat-rulebase', val) end def qos_rulebase prop_get('qos-rulebase') end def qos_rulebase=(val) prop_set('qos-rulebase', val) end def pbf_rulebase prop_get('pbf-rulebase') end def pbf_rulebase=(val) prop_set('pbf-rulebase', val) end def ssl_decryption_rulebase prop_get('ssl-decryption-rulebase') end def ssl_decryption_rulebase=(val) prop_set('ssl-decryption-rulebase', val) end def tunnel_inspect_rulebase prop_get('tunnel-inspect-rulebase') end def tunnel_inspect_rulebase=(val) prop_set('tunnel-inspect-rulebase', val) end def application_override_rulebase prop_get('application-override-rulebase') end def application_override_rulebase=(val) prop_set('application-override-rulebase', val) end def authentication_rulebase prop_get('authentication-rulebase') end def authentication_rulebase=(val) prop_set('authentication-rulebase', val) end def dos_rulebase prop_get('dos-rulebase') end def dos_rulebase=(val) prop_set('dos-rulebase', val) end def sdwan_rulebase prop_get('sdwan-rulebase') end def sdwan_rulebase=(val) prop_set('sdwan-rulebase', val) end def rule_hit_count_reset prop_get('rule-hit-count-reset') end def rule_hit_count_reset=(val) prop_set('rule-hit-count-reset', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end class GlobalProtect__12 < ConfigClass def has_multiple_values? false end def _section :'global-protect__12' end @props={"hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"HIP Objects", "node-config-ids"=>"HIPObjects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"HIP Profiles", "node-config-ids"=>"HIPProfiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def hip_objects prop_get('hip-objects') end def hip_objects=(val) prop_set('hip-objects', val) end def hip_profiles prop_get('hip-profiles') end def hip_profiles=(val) prop_set('hip-profiles', val) end end # class GlobalProtect__12 def global_protect__12 @subclasses['global-protect__12'] ||= GlobalProtect__12.new(parent_instance: self, create_children: @create_children) end class CustomObjects < ConfigClass def has_multiple_values? false end def _section :'custom-objects' end @props={"data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DataPatterns", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "spyware"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "node-config-ids"=>"CustomSpyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "node-config-ids"=>"CustomVulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-category"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Category", "help-topic"=>"custom_url_categories", "node-config-ids"=>"CustomURLCategory", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def data_patterns prop_get('data-patterns') end def data_patterns=(val) prop_set('data-patterns', val) end def spyware prop_get('spyware') end def spyware=(val) prop_set('spyware', val) end def vulnerability prop_get('vulnerability') end def vulnerability=(val) prop_set('vulnerability', val) end def url_category prop_get('url-category') end def url_category=(val) prop_set('url-category', val) end end # class CustomObjects def custom_objects @subclasses['custom-objects'] ||= CustomObjects.new(parent_instance: self, create_children: @create_children) end class SecurityProfiles < ConfigClass def has_multiple_values? false end def _section :'security-profiles' end @props={"antivirus"=> {"node-type"=>"element", "menu-tree-path"=>"Antivirus", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiVirusProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware"=> {"node-type"=>"element", "menu-tree-path"=>"Anti-Spyware", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"AntiSpywareProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"VulnerabilityProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "menu-tree-path"=>"URL Filtering", "skip-display"=>"shared-gateway", "node-config-ids"=>"URLFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"FileBlocking", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis"=> {"node-type"=>"element", "menu-tree-path"=>"WildFire Analysis", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"WildFireAnalysis", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "node-config-ids"=>"DataFiltering", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection", "node-config-ids"=>"DoSProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"Mobile Network Protection", "node-config-ids"=>"GTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection", "node-config-ids"=>"SCTPProtection", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def antivirus prop_get('antivirus') end def antivirus=(val) prop_set('antivirus', val) end def anti_spyware prop_get('anti-spyware') end def anti_spyware=(val) prop_set('anti-spyware', val) end def vulnerability_protection prop_get('vulnerability-protection') end def vulnerability_protection=(val) prop_set('vulnerability-protection', val) end def url_filtering prop_get('url-filtering') end def url_filtering=(val) prop_set('url-filtering', val) end def file_blocking prop_get('file-blocking') end def file_blocking=(val) prop_set('file-blocking', val) end def wildfire_analysis prop_get('wildfire-analysis') end def wildfire_analysis=(val) prop_set('wildfire-analysis', val) end def data_filtering prop_get('data-filtering') end def data_filtering=(val) prop_set('data-filtering', val) end def dos_protection prop_get('dos-protection') end def dos_protection=(val) prop_set('dos-protection', val) end def gtp_protection prop_get('gtp-protection') end def gtp_protection=(val) prop_set('gtp-protection', val) end def sctp_protection prop_get('sctp-protection') end def sctp_protection=(val) prop_set('sctp-protection', val) end end # class SecurityProfiles def security_profiles @subclasses['security-profiles'] ||= SecurityProfiles.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end @props={"decryption-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "menu-tree-path"=>"Decryption Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profile"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "menu-tree-path"=>"Forwarding Profile", "skip-display"=>"shared-gateway", "node-config-ids"=>"DecryptionForwardingProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def decryption_profile prop_get('decryption-profile') end def decryption_profile=(val) prop_set('decryption-profile', val) end def decryption_forwarding_profile prop_get('decryption-forwarding-profile') end def decryption_forwarding_profile=(val) prop_set('decryption-forwarding-profile', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end @props={"sdwan-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Path Quality Profile", "node-config-ids"=>"SDWANProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SaaS Quality Profile", "node-config-ids"=>"SDWANSaaSQualityProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-dist-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Traffic Distribution Profile", "node-config-ids"=>"SDWANDistProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Error Correction Profile", "node-config-ids"=>"SDWANErrorCorrectionProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def sdwan_profile prop_get('sdwan-profile') end def sdwan_profile=(val) prop_set('sdwan-profile', val) end def sdwan_saas_quality_profile prop_get('sdwan-saas-quality-profile') end def sdwan_saas_quality_profile=(val) prop_set('sdwan-saas-quality-profile', val) end def sdwan_dist_profile prop_get('sdwan-dist-profile') end def sdwan_dist_profile=(val) prop_set('sdwan-dist-profile', val) end def sdwan_error_correction_profile prop_get('sdwan-error-correction-profile') end def sdwan_error_correction_profile=(val) prop_set('sdwan-error-correction-profile', val) end end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Address", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AddressGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Region", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"DynamicUserGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Application", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"ApplicationFilter", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Service", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"ServiceGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Tag", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"DeviceObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-block-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"External Dynamic Lists", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "node-config-ids"=>"DynamicBlockList", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"SecurityProfileGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "node-config-ids"=>"LogForwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "node-config-ids"=>"AuthenticationObject", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "node-config-ids"=>"Schedule", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def dynamic_block_lists prop_get('dynamic-block-lists') end def dynamic_block_lists=(val) prop_set('dynamic-block-lists', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding prop_get('log-forwarding') end def log_forwarding=(val) prop_set('log-forwarding', val) end def authentication prop_get('authentication') end def authentication=(val) prop_set('authentication', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class GlobalProtect__2 < ConfigClass def has_multiple_values? false end def _section :'global-protect__2' end @props={"portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"portals_globalprotect", "node-config-ids"=>"GlobalProtectPortal", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gateways_globalprotect", "node-config-ids"=>"GlobalProtectGatewayVSYS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mdm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"MDM", "help-topic"=>"mdm_globalprotect", "node-config-ids"=>"GlobalProtectMDM", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_apps", "node-config-ids"=>"GlobalProtectClientlessApp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"clientless_app_groups", "node-config-ids"=>"GlobalProtectClientlessAppGroup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def portals prop_get('portals') end def portals=(val) prop_set('portals', val) end def gateways prop_get('gateways') end def gateways=(val) prop_set('gateways', val) end def mdm prop_get('mdm') end def mdm=(val) prop_set('mdm', val) end def clientless_apps prop_get('clientless-apps') end def clientless_apps=(val) prop_set('clientless-apps', val) end def clientless_app_groups prop_get('clientless-app-groups') end def clientless_app_groups=(val) prop_set('clientless-app-groups', val) end end # class GlobalProtect__2 def global_protect__2 @subclasses['global-protect__2'] ||= GlobalProtect__2.new(parent_instance: self, create_children: @create_children) end @props={"zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"Zones", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SD-WAN Interface Profile", "node-config-ids"=>"SDWANInterfaceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def sdwan_interface_profile prop_get('sdwan-interface-profile') end def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end class Setup < ConfigClass def has_multiple_values? false end def _section :'setup' end @props={"management"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "operations"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Operations", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "interfaces"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "telemetry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "content-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"Content-ID", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"WildFire", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_setup", "menu-tree-path"=>"HSM", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}} def management prop_get('management') end def management=(val) prop_set('management', val) end def operations prop_get('operations') end def operations=(val) prop_set('operations', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def interfaces prop_get('interfaces') end def interfaces=(val) prop_set('interfaces', val) end def telemetry prop_get('telemetry') end def telemetry=(val) prop_set('telemetry', val) end def content_id prop_get('content-id') end def content_id=(val) prop_set('content-id', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def session prop_get('session') end def session=(val) prop_set('session', val) end def hsm prop_get('hsm') end def hsm=(val) prop_set('hsm', val) end end # class Setup def setup @subclasses['setup'] ||= Setup.new(parent_instance: self, create_children: @create_children) end class CertificateManagement < ConfigClass def has_multiple_values? false end def _section :'certificate-management' end @props={"certificates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"certificates", "node-config-ids"=>"Certificate", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"CertificateProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ocsp-responder"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"OCSP Responder", "node-config-ids"=>"OCSPResponder", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL/TLS Service Profile", "help-topic"=>"ssl_tls_service_profile", "node-config-ids"=>"SslTlsServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "scep"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SCEP", "node-config-ids"=>"SCEP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssl-decryption-exclusion"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSL Decryption Exclusion", "node-config-ids"=>"SslDecryptionExclusion", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ssh-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"SSH Service Profile", "help-topic"=>"ssh_service_profile", "node-config-ids"=>"SshServiceProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def certificates prop_get('certificates') end def certificates=(val) prop_set('certificates', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end def ocsp_responder prop_get('ocsp-responder') end def ocsp_responder=(val) prop_set('ocsp-responder', val) end def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end def ssl_decryption_exclusion prop_get('ssl-decryption-exclusion') end def ssl_decryption_exclusion=(val) prop_set('ssl-decryption-exclusion', val) end def ssh_service_profile prop_get('ssh-service-profile') end def ssh_service_profile=(val) prop_set('ssh-service-profile', val) end end # class CertificateManagement def certificate_management @subclasses['certificate-management'] ||= CertificateManagement.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end @props={"system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"system_log_settings", "node-config-ids"=> "LogSettingsSystem,LogSettingsConfig,LogSettingsUserID,LogSettingsHIPMatch,LogSettingsCorrelation,LogSettingsGlobalProtect LogSettingsCCAlarms", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"config_log_settings", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "iptag__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IP-Tag", "help-topic"=>"ip_tag_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "user-id__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID", "help-topic"=>"user_id_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "hipmatch__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"HIP Match", "help-topic"=>"hip_match_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect__6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect", "help-topic"=>"globalprotect_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "correlation__7"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Correlation", "help-topic"=>"correlation_log_settings", "skip-display"=>"vpn-disable-mode", "prune-on"=>"vpn-disable-mode", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}} def system prop_get('system') end def system=(val) prop_set('system', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def iptag__3 prop_get('iptag__3') end def iptag__3=(val) prop_set('iptag__3', val) end def user_id__4 prop_get('user-id__4') end def user_id__4=(val) prop_set('user-id__4', val) end def hipmatch__5 prop_get('hipmatch__5') end def hipmatch__5=(val) prop_set('hipmatch__5', val) end def globalprotect__6 prop_get('globalprotect__6') end def globalprotect__6=(val) prop_set('globalprotect__6', val) end def correlation__7 prop_get('correlation__7') end def correlation__7=(val) prop_set('correlation__7', val) end end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class ServerProfile < ConfigClass def has_multiple_values? false end def _section :'server-profile' end @props={"snmp-trap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"snmp_trap_settings", "menu-tree-path"=>"SNMP Trap", "node-config-ids"=>"ServerProfileSNMPTrap", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"syslog_settings", "node-config-ids"=>"ServerProfileSyslog", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"email_settings", "node-config-ids"=>"ServerProfileEmail", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"http_settings", "menu-tree-path"=>"HTTP", "node-config-ids"=>"ServerProfileHTTP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "netflow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"netflow_settings", "node-config-ids"=>"ServerProfileNetflow", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "radius"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_radius", "node-config-ids"=>"ServerProfileRadius", "menu-tree-path"=>"RADIUS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tacplus"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_tacplus", "node-config-ids"=>"ServerProfileTacacs", "menu-tree-path"=>"TACACS+", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "ldap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_ldap", "menu-tree-path"=>"LDAP", "node-config-ids"=>"ServerProfileLDAP", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "kerberos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_kerberos", "node-config-ids"=>"ServerProfileKerberos", "skip-display"=>"fips-mode,cc-only-mode", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "saml_idp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_saml_idp", "menu-tree-path"=>"SAML Identity Provider", "node-config-ids"=>"ServerProfileSamlIdp", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dns"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.device.dns-disable=True", "skip-display"=>"single-vsys-mode", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_dns", "menu-tree-path"=>"DNS", "node-config-ids"=>"ServerProfileDNS", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "mfa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"server_mfa", "menu-tree-path"=>"Multi Factor Authentication", "node-config-ids"=>"ServerProfileMFA", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def snmp_trap prop_get('snmp-trap') end def snmp_trap=(val) prop_set('snmp-trap', val) end def syslog prop_get('syslog') end def syslog=(val) prop_set('syslog', val) end def email prop_get('email') end def email=(val) prop_set('email', val) end def http prop_get('http') end def http=(val) prop_set('http', val) end def netflow prop_get('netflow') end def netflow=(val) prop_set('netflow', val) end def radius prop_get('radius') end def radius=(val) prop_set('radius', val) end def tacplus prop_get('tacplus') end def tacplus=(val) prop_set('tacplus', val) end def ldap prop_get('ldap') end def ldap=(val) prop_set('ldap', val) end def kerberos prop_get('kerberos') end def kerberos=(val) prop_set('kerberos', val) end def saml_idp prop_get('saml_idp') end def saml_idp=(val) prop_set('saml_idp', val) end def dns prop_get('dns') end def dns=(val) prop_set('dns', val) end def mfa prop_get('mfa') end def mfa=(val) prop_set('mfa', val) end end # class ServerProfile def server_profile @subclasses['server-profile'] ||= ServerProfile.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase < ConfigClass def has_multiple_values? false end def _section :'local-user-database' end @props={"users"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_users", "node-config-ids"=>"LocalUsers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"local_user_groups", "node-config-ids"=>"LocalUserGroups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def users prop_get('users') end def users=(val) prop_set('users', val) end def user_groups prop_get('user-groups') end def user_groups=(val) prop_set('user-groups', val) end end # class LocalUserDatabase def local_user_database @subclasses['local-user-database'] ||= LocalUserDatabase.new(parent_instance: self, create_children: @create_children) end @props={"administrators"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"admin_accounts", "node-config-ids"=>"Administrator", "enum"=>[{"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthenticationProfile", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-sequence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "node-config-ids"=>"AuthSeqBase", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"device_user_id", "node-config-ids"=> "UserIdCollector,ServerMonitor,IncludeExcludeNetwork,UserIdConnSecurity,UserIdAgent,TSAgent,GroupMapping", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-redistribution"=> {"node-type"=>"element", "optional"=>"yes", "help-topic"=>"data_redistribution", "menu-tree-path"=>"Data Redistribution", "type"=>"enum", "node-config-ids"=> "RDAgent,DataRedistributionCollector,DataRedistributionIPUserIncludeExcludeNetwork,DataRedistributionIPTagIncludeExcludeNetwork", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "device-quarantine"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Device Quarantine", "help-topic"=>"device_quarantine", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vm-info-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"VM Information Sources", "node-config-ids"=>"VMInformationSources", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "troubleshooting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Troubleshooting", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "block-pages"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Response Pages", "node-config-ids"=>"ResponsePageTopLevel", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-recommendation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policy_recommendation", "menu-tree-path"=>"Policy Recommendation", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def administrators prop_get('administrators') end def administrators=(val) prop_set('administrators', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def authentication_sequence prop_get('authentication-sequence') end def authentication_sequence=(val) prop_set('authentication-sequence', val) end def user_identification prop_get('user-identification') end def user_identification=(val) prop_set('user-identification', val) end def data_redistribution prop_get('data-redistribution') end def data_redistribution=(val) prop_set('data-redistribution', val) end def device_quarantine prop_get('device-quarantine') end def device_quarantine=(val) prop_set('device-quarantine', val) end def vm_info_source prop_get('vm-info-source') end def vm_info_source=(val) prop_set('vm-info-source', val) end def troubleshooting prop_get('troubleshooting') end def troubleshooting=(val) prop_set('troubleshooting', val) end def block_pages prop_get('block-pages') end def block_pages=(val) prop_set('block-pages', val) end def policy_recommendation prop_get('policy-recommendation') end def policy_recommendation=(val) prop_set('policy-recommendation', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end class Operations < ConfigClass def has_multiple_values? false end def _section :'operations' end @props={"reboot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-tech-support-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "generate-stats-dump-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "download-core-files"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def reboot prop_get('reboot') end def reboot=(val) prop_set('reboot', val) end def generate_tech_support_file prop_get('generate-tech-support-file') end def generate_tech_support_file=(val) prop_set('generate-tech-support-file', val) end def generate_stats_dump_file prop_get('generate-stats-dump-file') end def generate_stats_dump_file=(val) prop_set('generate-stats-dump-file', val) end def download_core_files prop_get('download-core-files') end def download_core_files=(val) prop_set('download-core-files', val) end end # class Operations def operations @subclasses['operations'] ||= Operations.new(parent_instance: self, create_children: @create_children) end class Privacy < ConfigClass def has_multiple_values? false end def _section :'privacy' end @props={"show-full-ip-addresses"=> {"node-type"=>"element", "menu-tree-path"=>"Show Full IP Addresses", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "show-user-names-in-logs-and-reports"=> {"node-type"=>"element", "menu-tree-path"=>"Show Username In Logs And Reports", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "view-pcap-files"=> {"node-type"=>"element", "menu-tree-path"=>"View PCAP Files", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def show_full_ip_addresses prop_get('show-full-ip-addresses') end def show_full_ip_addresses=(val) prop_set('show-full-ip-addresses', val) end def show_user_names_in_logs_and_reports prop_get('show-user-names-in-logs-and-reports') end def show_user_names_in_logs_and_reports=(val) prop_set('show-user-names-in-logs-and-reports', val) end def view_pcap_files prop_get('view-pcap-files') end def view_pcap_files=(val) prop_set('view-pcap-files', val) end end # class Privacy def privacy @subclasses['privacy'] ||= Privacy.new(parent_instance: self, create_children: @create_children) end class Save < ConfigClass def has_multiple_values? false end def _section :'save' end @props={"partial-save"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "save-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def partial_save prop_get('partial-save') end def partial_save=(val) prop_set('partial-save', val) end def save_for_other_admins prop_get('save-for-other-admins') end def save_for_other_admins=(val) prop_set('save-for-other-admins', val) end end # class Save def save @subclasses['save'] ||= Save.new(parent_instance: self, create_children: @create_children) end class Commit < ConfigClass def has_multiple_values? false end def _section :'commit' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit-for-other-admins"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end def commit_for_other_admins prop_get('commit-for-other-admins') end def commit_for_other_admins=(val) prop_set('commit-for-other-admins', val) end end # class Commit def commit @subclasses['commit'] ||= Commit.new(parent_instance: self, create_children: @create_children) end @props={"dashboard"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "acc"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"ACC", "prune-on-sdb"=>"cfg.vm-license-type=vm50l", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "tasks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def dashboard prop_get('dashboard') end def dashboard=(val) prop_set('dashboard', val) end def acc prop_get('acc') end def acc=(val) prop_set('acc', val) end def tasks prop_get('tasks') end def tasks=(val) prop_set('tasks', val) end end # class Webui def webui @subclasses['webui'] ||= Webui.new(parent_instance: self, create_children: @create_children) end class Xmlapi < ConfigClass def has_multiple_values? false end def _section :'xmlapi' end @props={"report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Report", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Log", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Configuration", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "op"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Operational Requests", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Commit", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "user-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"User-ID Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "iot"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"IoT Agent", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Export", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}, "import"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"Import", "enum"=>[{"value"=>"enable"}, {"value"=>"disable"}]}} def report prop_get('report') end def report=(val) prop_set('report', val) end def log prop_get('log') end def log=(val) prop_set('log', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def op prop_get('op') end def op=(val) prop_set('op', val) end def commit prop_get('commit') end def commit=(val) prop_set('commit', val) end def user_id prop_get('user-id') end def user_id=(val) prop_set('user-id', val) end def iot prop_get('iot') end def iot=(val) prop_set('iot', val) end def export prop_get('export') end def export=(val) prop_set('export', val) end def import prop_get('import') end def import=(val) prop_set('import', val) end end # class Xmlapi def xmlapi @subclasses['xmlapi'] ||= Xmlapi.new(parent_instance: self, create_children: @create_children) end class Restapi < ConfigClass def has_multiple_values? false end def _section :'restapi' end class Objects < ConfigClass def has_multiple_values? false end def _section :'objects' end @props={"addresses"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "address-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "regions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dynamic-user-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "applications"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-filters"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "services"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "service-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tags"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-objects"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_objects", "menu-tree-path"=>"GlobalProtect HIP Objects", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-hip-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"hip_profiles", "menu-tree-path"=>"GlobalProtect HIP Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "external-dynamic-lists"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"external_dynamic_list", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-data-patterns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-spyware-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_spyware", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-vulnerability-signatures"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"signatures_vulnerability", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "custom-url-categories"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"custom_url_categories", "menu-tree-path"=>"URL Category", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "antivirus-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"antivirus_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "anti-spyware-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"anti-spyware_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "vulnerability-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"vulnerability_protection_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "url-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"url_filtering_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"URL Filtering Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "file-blocking-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"file_blocking_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "wildfire-analysis-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"wildfire_analysis_profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"WildFire Analysis Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "data-filtering-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"data_filtering_profiles", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"dos_profiles", "menu-tree-path"=>"DoS Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "gtp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"gtp_protection", "menu-tree-path"=>"GTP Protection Security Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sctp-protection-security-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sctp_protection", "menu-tree-path"=>"SCTP Protection Secuirty Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "security-profile-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "log-forwarding-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"log_forwarding", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-enforcements"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"authentication", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-forwarding-profiles"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.prune-on-decrypt-brk", "optional"=>"yes", "type"=>"enum", "help-topic"=>"decryption_forwarding_profile", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "schedules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-path-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-path-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Path Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-saas-quality-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-saas-quality-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Saas Quality Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-traffic-distribution-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-traffic-distribution-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Traffic Distribution Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-error-correction-profiles"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"sdwan-error-correction-profiles", "skip-display"=>"shared-gateway", "menu-tree-path"=>"SD-WAN Error Correction Profiles", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def addresses prop_get('addresses') end def addresses=(val) prop_set('addresses', val) end def address_groups prop_get('address-groups') end def address_groups=(val) prop_set('address-groups', val) end def regions prop_get('regions') end def regions=(val) prop_set('regions', val) end def dynamic_user_groups prop_get('dynamic-user-groups') end def dynamic_user_groups=(val) prop_set('dynamic-user-groups', val) end def applications prop_get('applications') end def applications=(val) prop_set('applications', val) end def application_groups prop_get('application-groups') end def application_groups=(val) prop_set('application-groups', val) end def application_filters prop_get('application-filters') end def application_filters=(val) prop_set('application-filters', val) end def services prop_get('services') end def services=(val) prop_set('services', val) end def service_groups prop_get('service-groups') end def service_groups=(val) prop_set('service-groups', val) end def tags prop_get('tags') end def tags=(val) prop_set('tags', val) end def devices prop_get('devices') end def devices=(val) prop_set('devices', val) end def globalprotect_hip_objects prop_get('globalprotect-hip-objects') end def globalprotect_hip_objects=(val) prop_set('globalprotect-hip-objects', val) end def globalprotect_hip_profiles prop_get('globalprotect-hip-profiles') end def globalprotect_hip_profiles=(val) prop_set('globalprotect-hip-profiles', val) end def external_dynamic_lists prop_get('external-dynamic-lists') end def external_dynamic_lists=(val) prop_set('external-dynamic-lists', val) end def custom_data_patterns prop_get('custom-data-patterns') end def custom_data_patterns=(val) prop_set('custom-data-patterns', val) end def custom_spyware_signatures prop_get('custom-spyware-signatures') end def custom_spyware_signatures=(val) prop_set('custom-spyware-signatures', val) end def custom_vulnerability_signatures prop_get('custom-vulnerability-signatures') end def custom_vulnerability_signatures=(val) prop_set('custom-vulnerability-signatures', val) end def custom_url_categories prop_get('custom-url-categories') end def custom_url_categories=(val) prop_set('custom-url-categories', val) end def antivirus_security_profiles prop_get('antivirus-security-profiles') end def antivirus_security_profiles=(val) prop_set('antivirus-security-profiles', val) end def anti_spyware_security_profiles prop_get('anti-spyware-security-profiles') end def anti_spyware_security_profiles=(val) prop_set('anti-spyware-security-profiles', val) end def vulnerability_protection_security_profiles prop_get('vulnerability-protection-security-profiles') end def vulnerability_protection_security_profiles=(val) prop_set('vulnerability-protection-security-profiles', val) end def url_filtering_security_profiles prop_get('url-filtering-security-profiles') end def url_filtering_security_profiles=(val) prop_set('url-filtering-security-profiles', val) end def file_blocking_security_profiles prop_get('file-blocking-security-profiles') end def file_blocking_security_profiles=(val) prop_set('file-blocking-security-profiles', val) end def wildfire_analysis_security_profiles prop_get('wildfire-analysis-security-profiles') end def wildfire_analysis_security_profiles=(val) prop_set('wildfire-analysis-security-profiles', val) end def data_filtering_security_profiles prop_get('data-filtering-security-profiles') end def data_filtering_security_profiles=(val) prop_set('data-filtering-security-profiles', val) end def dos_protection_security_profiles prop_get('dos-protection-security-profiles') end def dos_protection_security_profiles=(val) prop_set('dos-protection-security-profiles', val) end def gtp_protection_security_profiles prop_get('gtp-protection-security-profiles') end def gtp_protection_security_profiles=(val) prop_set('gtp-protection-security-profiles', val) end def sctp_protection_security_profiles prop_get('sctp-protection-security-profiles') end def sctp_protection_security_profiles=(val) prop_set('sctp-protection-security-profiles', val) end def security_profile_groups prop_get('security-profile-groups') end def security_profile_groups=(val) prop_set('security-profile-groups', val) end def log_forwarding_profiles prop_get('log-forwarding-profiles') end def log_forwarding_profiles=(val) prop_set('log-forwarding-profiles', val) end def authentication_enforcements prop_get('authentication-enforcements') end def authentication_enforcements=(val) prop_set('authentication-enforcements', val) end def decryption_profiles prop_get('decryption-profiles') end def decryption_profiles=(val) prop_set('decryption-profiles', val) end def decryption_forwarding_profiles prop_get('decryption-forwarding-profiles') end def decryption_forwarding_profiles=(val) prop_set('decryption-forwarding-profiles', val) end def schedules prop_get('schedules') end def schedules=(val) prop_set('schedules', val) end def sdwan_path_quality_profiles prop_get('sdwan-path-quality-profiles') end def sdwan_path_quality_profiles=(val) prop_set('sdwan-path-quality-profiles', val) end def sdwan_saas_quality_profiles prop_get('sdwan-saas-quality-profiles') end def sdwan_saas_quality_profiles=(val) prop_set('sdwan-saas-quality-profiles', val) end def sdwan_traffic_distribution_profiles prop_get('sdwan-traffic-distribution-profiles') end def sdwan_traffic_distribution_profiles=(val) prop_set('sdwan-traffic-distribution-profiles', val) end def sdwan_error_correction_profiles prop_get('sdwan-error-correction-profiles') end def sdwan_error_correction_profiles=(val) prop_set('sdwan-error-correction-profiles', val) end end # class Objects def objects @subclasses['objects'] ||= Objects.new(parent_instance: self, create_children: @create_children) end class Policies < ConfigClass def has_multiple_values? false end def _section :'policies' end @props={"security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"policies_security", "skip-display"=>"shared-gateway", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "nat-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "help-topic"=>"nat_rules", "menu-tree-path"=>"NAT Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-topic"=>"qos_policies", "skip-display"=>"shared-gateway", "menu-tree-path"=>"QoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "policy-based-forwarding-rules"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.general.vm-mode=1", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"decryption_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "tunnel-inspection-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"tunnel_inspection_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"application_override_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "authentication-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"authentication_rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"dos_rules", "menu-tree-path"=>"DoS Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "skip-display"=>"shared-gateway", "help-topic"=>"sdwan-rules", "menu-tree-path"=>"SD-WAN Rules", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def security_rules prop_get('security-rules') end def security_rules=(val) prop_set('security-rules', val) end def nat_rules prop_get('nat-rules') end def nat_rules=(val) prop_set('nat-rules', val) end def qos_rules prop_get('qos-rules') end def qos_rules=(val) prop_set('qos-rules', val) end def policy_based_forwarding_rules prop_get('policy-based-forwarding-rules') end def policy_based_forwarding_rules=(val) prop_set('policy-based-forwarding-rules', val) end def decryption_rules prop_get('decryption-rules') end def decryption_rules=(val) prop_set('decryption-rules', val) end def tunnel_inspection_rules prop_get('tunnel-inspection-rules') end def tunnel_inspection_rules=(val) prop_set('tunnel-inspection-rules', val) end def application_override_rules prop_get('application-override-rules') end def application_override_rules=(val) prop_set('application-override-rules', val) end def authentication_rules prop_get('authentication-rules') end def authentication_rules=(val) prop_set('authentication-rules', val) end def dos_rules prop_get('dos-rules') end def dos_rules=(val) prop_set('dos-rules', val) end def sdwan_rules prop_get('sdwan-rules') end def sdwan_rules=(val) prop_set('sdwan-rules', val) end end # class Policies def policies @subclasses['policies'] ||= Policies.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end @props={"zones"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-portals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Portals", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-gateways"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Gateways", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-mdm-servers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect MDM Servers", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-apps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless Apps", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}, "globalprotect-clientless-app-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "menu-tree-path"=>"GlobalProtect Clientless App Groups", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def zones prop_get('zones') end def zones=(val) prop_set('zones', val) end def globalprotect_portals prop_get('globalprotect-portals') end def globalprotect_portals=(val) prop_set('globalprotect-portals', val) end def globalprotect_gateways prop_get('globalprotect-gateways') end def globalprotect_gateways=(val) prop_set('globalprotect-gateways', val) end def globalprotect_mdm_servers prop_get('globalprotect-mdm-servers') end def globalprotect_mdm_servers=(val) prop_set('globalprotect-mdm-servers', val) end def globalprotect_clientless_apps prop_get('globalprotect-clientless-apps') end def globalprotect_clientless_apps=(val) prop_set('globalprotect-clientless-apps', val) end def globalprotect_clientless_app_groups prop_get('globalprotect-clientless-app-groups') end def globalprotect_clientless_app_groups=(val) prop_set('globalprotect-clientless-app-groups', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Device < ConfigClass def has_multiple_values? false end def _section :'device' end @props={"virtual-systems"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"enable"}, {"value"=>"read-only"}, {"value"=>"disable"}]}} def virtual_systems prop_get('virtual-systems') end def virtual_systems=(val) prop_set('virtual-systems', val) end end # class Device def device @subclasses['device'] ||= Device.new(parent_instance: self, create_children: @create_children) end @props={} end # class Restapi def restapi @subclasses['restapi'] ||= Restapi.new(parent_instance: self, create_children: @create_children) end @props={"cli"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"vsysadmin"}, {"value"=>"vsysreader"}]}} def cli prop_get('cli') end def cli=(val) prop_set('cli', val) end end # class Vsys__2 def vsys__2 @subclasses['vsys__2'] ||= Vsys__2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Role def role if @create_children @subclasses['role'] ||= Role.new(parent_instance: self, create_children: @create_children) else Role.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdminRole def admin_role if @create_children @subclasses['admin-role'] ||= AdminRole.new(parent_instance: self, create_children: @create_children) else AdminRole.new(parent_instance: self) end end class Scep < XML::ConfigClass def has_multiple_values? true end def _section :'scep' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScepChallenge < XML::ConfigClass def has_multiple_values? true end def _section :'scep-challenge' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"otp-server-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"URL to get the One-Time-Password", "uiHint-fieldLabel"=>"Server URL"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Username to authenticate to the SCEP server for procuring OTP"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Password to authenticate to the SCEP server for procuring OTP"}} # URL to get the One-Time-Password def otp_server_url prop_get('otp-server-url') end # URL to get the One-Time-Password def otp_server_url=(val) prop_set('otp-server-url', val) end # Username to authenticate to the SCEP server for procuring OTP def username prop_get('username') end # Username to authenticate to the SCEP server for procuring OTP def username=(val) prop_set('username', val) end # Password to authenticate to the SCEP server for procuring OTP def password prop_get('password') end # Password to authenticate to the SCEP server for procuring OTP def password=(val) prop_set('password', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"fixed"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "regex"=>"[^']*", "helpstring"=>"Challenge to use for SCEP server on mobile clients"}} def fixed prop_get('fixed') end def fixed=(val) prop_set('fixed', val) end end # class ScepChallenge def scep_challenge if @create_children @subclasses['scep-challenge'] ||= ScepChallenge.new(parent_instance: self, create_children: @create_children) else ScepChallenge.new(parent_instance: self) end end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Rsa < ConfigClass def has_multiple_values? false end def _section :'rsa' end @props={"rsa-nbits"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-nbits-complete-handler", "help-string"=>"Length of the key", "autocomplete"=>"yes"}} # Length of the key def rsa_nbits prop_get('rsa-nbits') end # Length of the key def rsa_nbits=(val) prop_set('rsa-nbits', val) end end # class Rsa def rsa @subclasses['rsa'] ||= Rsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end @props={"rfc822name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"rfc822Name"}, "dnsname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"dNSName"}, "uniform-resource-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"uniformResourceIdentifier"}} # rfc822Name def rfc822name prop_get('rfc822name') end # rfc822Name def rfc822name=(val) prop_set('rfc822name', val) end # dNSName def dnsname prop_get('dnsname') end # dNSName def dnsname=(val) prop_set('dnsname', val) end # uniformResourceIdentifier def uniform_resource_identifier prop_get('uniform-resource-identifier') end # uniformResourceIdentifier def uniform_resource_identifier=(val) prop_set('uniform-resource-identifier', val) end end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "scep-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"The base URL for the SCEP server"}, "scep-ca-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"SCEP Server CA Certificate", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate/entry[not(csr)][ca='yes']/@name"]}, "scep-client-cert"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "optional"=>"yes", "help-string"=> "Client Certificate to use when connecting to SCEP Server over SSL", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name"]}, "ca-identity-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Name of the SCEP server CA Identity"}, "subject"=> {"node-type"=>"element", "regex"=>"(.*)CN=(.*?)(.*)", "type"=>"string", "default"=>"CN=$USERNAME", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"Representation of a X.500 name"}, "digest"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-digest-complete-handler", "help-string"=>"Digest Algorithm for CSR", "autocomplete"=>"yes"}, "fingerprint"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Hex String to use as a fingerprint"}, "use-as-digital-signature"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use as digital signature", "uiHint-fieldLabel"=>"Use as digital signature"}, "use-for-key-encipherment"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use for key encipherment", "uiHint-fieldLabel"=>"Use for key encipherment"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The base URL for the SCEP server def scep_url prop_get('scep-url') end # The base URL for the SCEP server def scep_url=(val) prop_set('scep-url', val) end # SCEP Server CA Certificate def scep_ca_cert prop_get('scep-ca-cert') end # SCEP Server CA Certificate def scep_ca_cert=(val) prop_set('scep-ca-cert', val) end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert prop_get('scep-client-cert') end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert=(val) prop_set('scep-client-cert', val) end # Name of the SCEP server CA Identity def ca_identity_name prop_get('ca-identity-name') end # Name of the SCEP server CA Identity def ca_identity_name=(val) prop_set('ca-identity-name', val) end # Representation of a X.500 name def subject prop_get('subject') end # Representation of a X.500 name def subject=(val) prop_set('subject', val) end # Digest Algorithm for CSR def digest prop_get('digest') end # Digest Algorithm for CSR def digest=(val) prop_set('digest', val) end # Hex String to use as a fingerprint def fingerprint prop_get('fingerprint') end # Hex String to use as a fingerprint def fingerprint=(val) prop_set('fingerprint', val) end # Use as digital signature def use_as_digital_signature prop_get('use-as-digital-signature') end # Use as digital signature def use_as_digital_signature=(val) prop_set('use-as-digital-signature', val) end # Use for key encipherment def use_for_key_encipherment prop_get('use-for-key-encipherment') end # Use for key encipherment def use_for_key_encipherment=(val) prop_set('use-for-key-encipherment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scep def scep if @create_children @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) else Scep.new(parent_instance: self) end end @props={"user-id-hub__17"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"configure user-id hub.", "subtype"=>"object-name", "optional"=>"yes", "prune-on"=>"single-vsys-mode", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/vsys/entry/@name"]}} # configure user-id hub. def user_id_hub__17 prop_get('user-id-hub__17') end # configure user-id hub. def user_id_hub__17=(val) prop_set('user-id-hub__17', val) end end # class Shared def shared @subclasses['shared'] ||= Shared.new(parent_instance: self, create_children: @create_children) end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Deviceconfig < ConfigClass def has_multiple_values? false end def _section :'deviceconfig' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={"send-hostname"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "send-client-id"=>{"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-hostname"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-domain"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}} def send_hostname prop_get('send-hostname') end def send_hostname=(val) prop_set('send-hostname', val) end def send_client_id prop_get('send-client-id') end def send_client_id=(val) prop_set('send-client-id', val) end def accept_dhcp_hostname prop_get('accept-dhcp-hostname') end def accept_dhcp_hostname=(val) prop_set('accept-dhcp-hostname', val) end def accept_dhcp_domain prop_get('accept-dhcp-domain') end def accept_dhcp_domain=(val) prop_set('accept-dhcp-domain', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Aux1 < ConfigClass def has_multiple_values? false end def _section :'aux-1' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-udp__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"fips-mode"}, "disable-http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_userid_syslog_listener_ssl prop_get('disable-userid-syslog-listener-ssl') end def disable_userid_syslog_listener_ssl=(val) prop_set('disable-userid-syslog-listener-ssl', val) end def disable_userid_syslog_listener_udp__9 prop_get('disable-userid-syslog-listener-udp__9') end def disable_userid_syslog_listener_udp__9=(val) prop_set('disable-userid-syslog-listener-udp__9', val) end def disable_http_ocsp prop_get('disable-http-ocsp') end def disable_http_ocsp=(val) prop_set('disable-http-ocsp', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip address/prefix/Variable Object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix/Variable Object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=>[{"value"=>"auto-negotiate"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IP address for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "help-string"=>"IP netmask for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 address for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 Default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}} # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end end # class Aux1 def aux_1 @subclasses['aux-1'] ||= Aux1.new(parent_instance: self, create_children: @create_children) end class Aux2 < ConfigClass def has_multiple_values? false end def _section :'aux-2' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-udp__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"fips-mode"}, "disable-http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_userid_syslog_listener_ssl prop_get('disable-userid-syslog-listener-ssl') end def disable_userid_syslog_listener_ssl=(val) prop_set('disable-userid-syslog-listener-ssl', val) end def disable_userid_syslog_listener_udp__9 prop_get('disable-userid-syslog-listener-udp__9') end def disable_userid_syslog_listener_udp__9=(val) prop_set('disable-userid-syslog-listener-udp__9', val) end def disable_http_ocsp prop_get('disable-http-ocsp') end def disable_http_ocsp=(val) prop_set('disable-http-ocsp', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip address/prefix/Variable Object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix/Variable Object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=>[{"value"=>"auto-negotiate"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IP address for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "help-string"=>"IP netmask for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 address for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 Default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}} # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end end # class Aux2 def aux_2 @subclasses['aux-2'] ||= Aux2.new(parent_instance: self, create_children: @create_children) end class DnsSetting < ConfigClass def has_multiple_values? false end def _section :'dns-setting' end class Servers < ConfigClass def has_multiple_values? false end def _section :'servers' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Primary DNS server IP address or Variable object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS server IP address or Variable object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Primary DNS server IP address or Variable object def primary prop_get('primary') end # Primary DNS server IP address or Variable object def primary=(val) prop_set('primary', val) end # Secondary DNS server IP address or Variable object def secondary prop_get('secondary') end # Secondary DNS server IP address or Variable object def secondary=(val) prop_set('secondary', val) end end # class Servers def servers @subclasses['servers'] ||= Servers.new(parent_instance: self, create_children: @create_children) end @props={"dns-proxy-object"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Dns proxy object to use for resolving fqdns", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/dns-proxy/entry/@name"]}} # Dns proxy object to use for resolving fqdns def dns_proxy_object prop_get('dns-proxy-object') end # Dns proxy object to use for resolving fqdns def dns_proxy_object=(val) prop_set('dns-proxy-object', val) end end # class DnsSetting def dns_setting @subclasses['dns-setting'] ||= DnsSetting.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end class CloudService < ConfigClass def has_multiple_values? false end def _section :'cloud-service' end @props={} end # class CloudService def cloud_service @subclasses['cloud-service'] ||= CloudService.new(parent_instance: self, create_children: @create_children) end class LocalPanorama < ConfigClass def has_multiple_values? false end def _section :'local-panorama' end @props={"panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server (IP address or FQDN or Variable object)", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server 2 (IP address or FQDN or Variable object)", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # Panorama server (IP address or FQDN or Variable object) def panorama_server prop_get('panorama-server') end # Panorama server (IP address or FQDN or Variable object) def panorama_server=(val) prop_set('panorama-server', val) end # Panorama server 2 (IP address or FQDN or Variable object) def panorama_server_2 prop_get('panorama-server-2') end # Panorama server 2 (IP address or FQDN or Variable object) def panorama_server_2=(val) prop_set('panorama-server-2', val) end end # class LocalPanorama def local_panorama @subclasses['local-panorama'] ||= LocalPanorama.new(parent_instance: self, create_children: @create_children) end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class NtpServers < ConfigClass def has_multiple_values? false end def _section :'ntp-servers' end class PrimaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'primary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class PrimaryNtpServer def primary_ntp_server @subclasses['primary-ntp-server'] ||= PrimaryNtpServer.new(parent_instance: self, create_children: @create_children) end class SecondaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'secondary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class SecondaryNtpServer def secondary_ntp_server @subclasses['secondary-ntp-server'] ||= SecondaryNtpServer.new(parent_instance: self, create_children: @create_children) end @props={} end # class NtpServers def ntp_servers @subclasses['ntp-servers'] ||= NtpServers.new(parent_instance: self, create_children: @create_children) end class HsmSettings < ConfigClass def has_multiple_values? false end def _section :'hsm-settings' end class Provider < ConfigClass def has_multiple_values? false end def _section :'provider' end class SafenetNetwork < ConfigClass def has_multiple_values? false end def _section :'safenet-network' end class HsmServer < XML::ConfigClass def has_multiple_values? true end def _section :'hsm-server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"hsm server name"}, "server-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"HSM server IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # hsm server name def name prop_get('@name') end # HSM server IP address def server_address prop_get('server-address') end # HSM server IP address def server_address=(val) prop_set('server-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HsmServer def hsm_server if @create_children @subclasses['hsm-server'] ||= HsmServer.new(parent_instance: self, create_children: @create_children) else HsmServer.new(parent_instance: self) end end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"auto-recovery-retry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"500", "default"=>"0", "help-string"=> "The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off."}, "ha-group-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"HA group name"}} # The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off. def auto_recovery_retry prop_get('auto-recovery-retry') end # The number of times HSM HA function will attempt to automatically recover a member that has failed to synchronize or has dropped from the HA group. Setting to a value of zero switches the feature off. def auto_recovery_retry=(val) prop_set('auto-recovery-retry', val) end # HA group name def ha_group_name prop_get('ha-group-name') end # HA group name def ha_group_name=(val) prop_set('ha-group-name', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end @props={} end # class SafenetNetwork def safenet_network @subclasses['safenet-network'] ||= SafenetNetwork.new(parent_instance: self, create_children: @create_children) end class NcipherNshieldConnect < ConfigClass def has_multiple_values? false end def _section :'ncipher-nshield-connect' end class HsmServer < XML::ConfigClass def has_multiple_values? true end def _section :'hsm-server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"hsm server name"}, "server-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"HSM server IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # hsm server name def name prop_get('@name') end # HSM server IP address def server_address prop_get('server-address') end # HSM server IP address def server_address=(val) prop_set('server-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HsmServer def hsm_server if @create_children @subclasses['hsm-server'] ||= HsmServer.new(parent_instance: self, create_children: @create_children) else HsmServer.new(parent_instance: self) end end @props={"rfs-address"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address of remote file system server"}} # IP address of remote file system server def rfs_address prop_get('rfs-address') end # IP address of remote file system server def rfs_address=(val) prop_set('rfs-address', val) end end # class NcipherNshieldConnect def ncipher_nshield_connect @subclasses['ncipher-nshield-connect'] ||= NcipherNshieldConnect.new(parent_instance: self, create_children: @create_children) end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end @props={} end # class Provider def provider @subclasses['provider'] ||= Provider.new(parent_instance: self, create_children: @create_children) end @props={} end # class HsmSettings def hsm_settings @subclasses['hsm-settings'] ||= HsmSettings.new(parent_instance: self, create_children: @create_children) end class Ssh < ConfigClass def has_multiple_values? false end def _section :'ssh' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HaProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ha-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HaProfiles def ha_profiles if @create_children @subclasses['ha-profiles'] ||= HaProfiles.new(parent_instance: self, create_children: @create_children) else HaProfiles.new(parent_instance: self) end end class MgmtProfiles < ConfigClass def has_multiple_values? false end def _section :'mgmt-profiles' end class ServerProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'server-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerProfiles def server_profiles if @create_children @subclasses['server-profiles'] ||= ServerProfiles.new(parent_instance: self, create_children: @create_children) else ServerProfiles.new(parent_instance: self) end end @props={} end # class MgmtProfiles def mgmt_profiles @subclasses['mgmt-profiles'] ||= MgmtProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"ha-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"HA profile to be used by HA SSH", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/ha-profiles/entry/@name"]}} # HA profile to be used by HA SSH def ha_profile prop_get('ha-profile') end # HA profile to be used by HA SSH def ha_profile=(val) prop_set('ha-profile', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end @props={"server-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Mgmt profile to be used by Mgmt SSH Server", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/mgmt-profiles/server-profiles/entry/@name"]}} # Mgmt profile to be used by Mgmt SSH Server def server_profile prop_get('server-profile') end # Mgmt profile to be used by Mgmt SSH Server def server_profile=(val) prop_set('server-profile', val) end end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end class RegenerateHostkeys < ConfigClass def has_multiple_values? false end def _section :'regenerate-hostkeys' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegenerateHostkeys def regenerate_hostkeys @subclasses['regenerate-hostkeys'] ||= RegenerateHostkeys.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ssh def ssh @subclasses['ssh'] ||= Ssh.new(parent_instance: self, create_children: @create_children) end class DeviceTelemetry < ConfigClass def has_multiple_values? false end def _section :'device-telemetry' end @props={"product-usage"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "device-health-performance"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "threat-prevention"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "region"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"region name to send telemetry data", "complete-handler"=>"device-telemetry-region-completer"}} def product_usage prop_get('product-usage') end def product_usage=(val) prop_set('product-usage', val) end def device_health_performance prop_get('device-health-performance') end def device_health_performance=(val) prop_set('device-health-performance', val) end def threat_prevention prop_get('threat-prevention') end def threat_prevention=(val) prop_set('threat-prevention', val) end # region name to send telemetry data def region prop_get('region') end # region name to send telemetry data def region=(val) prop_set('region', val) end end # class DeviceTelemetry def device_telemetry @subclasses['device-telemetry'] ||= DeviceTelemetry.new(parent_instance: self, create_children: @create_children) end class SnmpSetting < ConfigClass def has_multiple_values? false end def _section :'snmp-setting' end class SnmpSystem < ConfigClass def has_multiple_values? false end def _section :'snmp-system' end @props={"location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"256", "help-string"=>"System location"}, "contact"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"256", "type"=>"string", "help-string"=>"Contact information"}, "send-event-specific-traps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Use Event-specific Trap Definitions"}} # System location def location prop_get('location') end # System location def location=(val) prop_set('location', val) end # Contact information def contact prop_get('contact') end # Contact information def contact=(val) prop_set('contact', val) end # Use Event-specific Trap Definitions def send_event_specific_traps prop_get('send-event-specific-traps') end # Use Event-specific Trap Definitions def send_event_specific_traps=(val) prop_set('send-event-specific-traps', val) end end # class SnmpSystem def snmp_system @subclasses['snmp-system'] ||= SnmpSystem.new(parent_instance: self, create_children: @create_children) end class AccessSetting < ConfigClass def has_multiple_values? false end def _section :'access-setting' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end @props={"snmp-community-string"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"public", "maxlen"=>"255", "help-string"=>"SNMP Community String"}} # SNMP Community String def snmp_community_string prop_get('snmp-community-string') end # SNMP Community String def snmp_community_string=(val) prop_set('snmp-community-string', val) end end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Views < XML::ConfigClass def has_multiple_values? true end def _section :'views' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class View < XML::ConfigClass def has_multiple_values? true end def _section :'view' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Oid subtree name"}, "oid"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "regex"=>"^[0-9\\.]+$", "help-string"=>"Oid of a mib node"}, "option"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"include"}, {"value"=>"exclude"}]}, "mask"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "regex"=>"^0+[xX][0-9a-fA-F:.]+$", "help-string"=>"Subtree mask in hex"}} # Oid subtree name def name prop_get('@name') end # Oid of a mib node def oid prop_get('oid') end # Oid of a mib node def oid=(val) prop_set('oid', val) end def option prop_get('option') end def option=(val) prop_set('option', val) end # Subtree mask in hex def mask prop_get('mask') end # Subtree mask in hex def mask=(val) prop_set('mask', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class View def view if @create_children @subclasses['view'] ||= View.new(parent_instance: self, create_children: @create_children) else View.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[^ ]+$", "help-string"=>"View name"}} # View name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Views def views if @create_children @subclasses['views'] ||= Views.new(parent_instance: self, create_children: @create_children) else Views.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"User name"}, "view"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Snmp View Name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/snmp-setting/access-setting/version/v3/views/entry/@name"]}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes", "help-string"=>"Authentication Protocol Password"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes", "help-string"=>"Privacy Protocol Password"}} # User name def name prop_get('@name') end # Snmp View Name def view prop_get('view') end # Snmp View Name def view=(val) prop_set('view', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={} end # class AccessSetting def access_setting @subclasses['access-setting'] ||= AccessSetting.new(parent_instance: self, create_children: @create_children) end @props={} end # class SnmpSetting def snmp_setting @subclasses['snmp-setting'] ||= SnmpSetting.new(parent_instance: self, create_children: @create_children) end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^-?[0-9]+([.][0-9]+)?$", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^-?[0-9]+([.][0-9]+)?$", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-http"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-https"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-telnet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-syslog-listener-udp__9"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"fips-mode"}, "disable-http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_http prop_get('disable-http') end def disable_http=(val) prop_set('disable-http', val) end def disable_https prop_get('disable-https') end def disable_https=(val) prop_set('disable-https', val) end def disable_telnet prop_get('disable-telnet') end def disable_telnet=(val) prop_set('disable-telnet', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_userid_syslog_listener_ssl prop_get('disable-userid-syslog-listener-ssl') end def disable_userid_syslog_listener_ssl=(val) prop_set('disable-userid-syslog-listener-ssl', val) end def disable_userid_syslog_listener_udp__9 prop_get('disable-userid-syslog-listener-udp__9') end def disable_userid_syslog_listener_udp__9=(val) prop_set('disable-userid-syslog-listener-udp__9', val) end def disable_http_ocsp prop_get('disable-http-ocsp') end def disable_http_ocsp=(val) prop_set('disable-http-ocsp', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip address/prefix/Variable Object", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # ip address/prefix/Variable Object def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end class Route < ConfigClass def has_multiple_values? false end def _section :'route' end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )", "substring(string('management'), 1, 10*(('$dhcp-type'='') and (('$address'='') or ('$mgmtip'='$address'))) )", "substring(string('aux-1'), 1, 5*(not('$aux1ip'='') and (('$address'='') or ('$aux1ip'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip'='') and (('$address'='') or ('$aux2ip'='$address'))) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('management'), 1, 10*((('$address'='') or ('$mgmt6'='$address')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url_updates') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='mfa') and not('$service_name'='data-services') ))", "substring(string('aux-1'), 1, 5*(not('$aux1ip6'='') and (('$address'='') or ('$aux1ip6'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip6'='') and (('$address'='') or ('$aux2ip6'='$address'))) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) and not('$service_name'='edl-updates') and not('$service_name'='paloalto-networks-services') and not('$service_name'='url-updates') and not('$service_name'='wildfire-private') and not('$service_name'='snmp') and not('$service_name'='hsm') and not('$service_name'='autofocus') and not('$service_name'='mfa') and not('$service_name'='data-services') ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"Service name", "autocomplete"=>"yes", "memberof"=> ["string('edl-updates')", "string('paloalto-networks-services')", "string('url-updates')", "string('proxy')", "string('panorama')", "string('radius')", "string('ldap')", "string('kerberos')", "string('tacplus')", "string('syslog')", "string('email')", "string('http')", "string('snmp')", "string('dns')", "string('ntp')", "string('crl-status')", "string('uid-agent')", "string('autofocus')", "string('wildfire-private')", "string('vmmonitor')", "string('mdm')", "string('scep')", "string('deployments')", "string('mfa')", "string('data-services')", "string('iot')", "string('netflow')", "string('hsm')", "string('panorama-log-forwarding')", "string('ddns')", "string('ztp')"]}} # Service name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )", "substring(string('management'), 1, 10*(('$dhcp-type'='') and (('$address'='') or ('$mgmtip'='$address'))) )", "substring(string('aux-1'), 1, 5*(not('$aux1ip'='') and (('$address'='') or ('$aux1ip'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip'='') and (('$address'='') or ('$aux2ip'='$address'))) )", "#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address')) ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) ]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address')) ]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address')) ))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address')) ))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address')) ))", "substring(string('management'), 1, 10*((('$address'='') or ('$mgmt6'='$address')) ))", "substring(string('aux-1'), 1, 5*(not('$aux1ip6'='') and (('$address'='') or ('$aux1ip6'='$address'))) )", "substring(string('aux-2'), 1, 5*(not('$aux2ip6'='') and (('$address'='') or ('$aux2ip6'='$address'))) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]", "#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"96", "help-string"=>"Destination IP/FQDN", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z.:/_-])+$", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # Destination IP/FQDN def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end @props={} end # class Route def route @subclasses['route'] ||= Route.new(parent_instance: self, create_children: @create_children) end class LogLink < XML::ConfigClass def has_multiple_values? true end def _section :'log-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"name of link", "regex"=>"[0-9a-zA-Z:@./_-]+"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"URL format of link", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024"}} # name of link def name prop_get('@name') end # URL format of link def url prop_get('url') end # URL format of link def url=(val) prop_set('url', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogLink def log_link if @create_children @subclasses['log-link'] ||= LogLink.new(parent_instance: self, create_children: @create_children) else LogLink.new(parent_instance: self) end end class LogExportSchedule < XML::ConfigClass def has_multiple_values? true end def _section :'log-export-schedule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Ftp__1 < ConfigClass def has_multiple_values? false end def _section :'ftp__1' end @props={"hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"ftp hostname", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"ftp port"}, "path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[\\.\\+/,\\{\\}0-9a-zA-Z_-]+$", "maxlen"=>"255", "help-string"=>"ftp server path"}, "username"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"ftp username", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"ftp password", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}, "passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable FTP Passive Mode"}} # ftp hostname def hostname prop_get('hostname') end # ftp hostname def hostname=(val) prop_set('hostname', val) end # ftp port def port prop_get('port') end # ftp port def port=(val) prop_set('port', val) end # ftp server path def path prop_get('path') end # ftp server path def path=(val) prop_set('path', val) end # ftp username def username prop_get('username') end # ftp username def username=(val) prop_set('username', val) end # ftp password def password prop_get('password') end # ftp password def password=(val) prop_set('password', val) end # Enable FTP Passive Mode def passive_mode prop_get('passive-mode') end # Enable FTP Passive Mode def passive_mode=(val) prop_set('passive-mode', val) end end # class Ftp__1 def ftp__1 @subclasses['ftp__1'] ||= Ftp__1.new(parent_instance: self, create_children: @create_children) end class Scp < ConfigClass def has_multiple_values? false end def _section :'scp' end @props={"hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"ftp hostname", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"scp port"}, "path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[\\.\\+/,\\{\\}0-9a-zA-Z_-]+$", "maxlen"=>"255", "help-string"=>"scp server path"}, "username"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"scp username", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"scp password", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # ftp hostname def hostname prop_get('hostname') end # ftp hostname def hostname=(val) prop_set('hostname', val) end # scp port def port prop_get('port') end # scp port def port=(val) prop_set('port', val) end # scp server path def path prop_get('path') end # scp server path def path=(val) prop_set('path', val) end # scp username def username prop_get('username') end # scp username def username=(val) prop_set('username', val) end # scp password def password prop_get('password') end # scp password def password=(val) prop_set('password', val) end end # class Scp def scp @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Schedule name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "log-type"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"traffic"}, {"value"=>"threat"}, {"value"=>"gtp"}, {"value"=>"sctp"}, {"value"=>"tunnel"}, {"value"=>"userid"}, {"value"=>"iptag"}, {"value"=>"auth"}, {"value"=>"url"}, {"value"=>"data"}, {"value"=>"hipmatch"}, {"value"=>"wildfire"}, {"value"=>"decryption"}, {"value"=>"globalprotect"}]}, "start-time"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time to start the scheduled export hh:mm (e.g. 03:30)"}} # Schedule name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def log_type prop_get('log-type') end def log_type=(val) prop_set('log-type', val) end # Time to start the scheduled export hh:mm (e.g. 03:30) def start_time prop_get('start-time') end # Time to start the scheduled export hh:mm (e.g. 03:30) def start_time=(val) prop_set('start-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogExportSchedule def log_export_schedule if @create_children @subclasses['log-export-schedule'] ||= LogExportSchedule.new(parent_instance: self, create_children: @create_children) else LogExportSchedule.new(parent_instance: self) end end class UpdateSchedule < ConfigClass def has_multiple_values? false end def _section :'update-schedule' end class StatisticsService < ConfigClass def has_multiple_values? false end def _section :'statistics-service' end @props={"application-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Application Reports"}, "threat-prevention-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Threat Reports"}, "threat-prevention-information"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Threat Prevention Information"}, "threat-prevention-pcap"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable sending packet-captures with threat prevention information"}, "passive-dns-monitoring"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Passive DNS Monitor"}, "url-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"URL Reports"}, "health-performance-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Health and Performance Reports"}, "file-identification-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"File Type Identification Reports"}} # Application Reports def application_reports prop_get('application-reports') end # Application Reports def application_reports=(val) prop_set('application-reports', val) end # Threat Reports def threat_prevention_reports prop_get('threat-prevention-reports') end # Threat Reports def threat_prevention_reports=(val) prop_set('threat-prevention-reports', val) end # Threat Prevention Information def threat_prevention_information prop_get('threat-prevention-information') end # Threat Prevention Information def threat_prevention_information=(val) prop_set('threat-prevention-information', val) end # Enable sending packet-captures with threat prevention information def threat_prevention_pcap prop_get('threat-prevention-pcap') end # Enable sending packet-captures with threat prevention information def threat_prevention_pcap=(val) prop_set('threat-prevention-pcap', val) end # Passive DNS Monitor def passive_dns_monitoring prop_get('passive-dns-monitoring') end # Passive DNS Monitor def passive_dns_monitoring=(val) prop_set('passive-dns-monitoring', val) end # URL Reports def url_reports prop_get('url-reports') end # URL Reports def url_reports=(val) prop_set('url-reports', val) end # Health and Performance Reports def health_performance_reports prop_get('health-performance-reports') end # Health and Performance Reports def health_performance_reports=(val) prop_set('health-performance-reports', val) end # File Type Identification Reports def file_identification_reports prop_get('file-identification-reports') end # File Type Identification Reports def file_identification_reports=(val) prop_set('file-identification-reports', val) end end # class StatisticsService def statistics_service @subclasses['statistics-service'] ||= StatisticsService.new(parent_instance: self, create_children: @create_children) end class Threats < ConfigClass def has_multiple_values? false end def _section :'threats' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "disable-new-content"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Disable new applications after installation"}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Disable new applications after installation def disable_new_content prop_get('disable-new-content') end # Disable new applications after installation def disable_new_content=(val) prop_set('disable-new-content', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "new-app-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore new apps if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # ignore new apps if release date is new (hours) def new_app_threshold prop_get('new-app-threshold') end # ignore new apps if release date is new (hours) def new_app_threshold=(val) prop_set('new-app-threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Threats def threats @subclasses['threats'] ||= Threats.new(parent_instance: self, create_children: @create_children) end class AppProfile < ConfigClass def has_multiple_values? false end def _section :'app-profile' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AppProfile def app_profile @subclasses['app-profile'] ||= AppProfile.new(parent_instance: self, create_children: @create_children) end class AntiVirus < ConfigClass def has_multiple_values? false end def _section :'anti-virus' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={"threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"336", "help-string"=>"ignore if release date is new (hours)"}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # ignore if release date is new (hours) def threshold prop_get('threshold') end # ignore if release date is new (hours) def threshold=(val) prop_set('threshold', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class AntiVirus def anti_virus @subclasses['anti-virus'] ||= AntiVirus.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RealTime < ConfigClass def has_multiple_values? false end def _section :'real-time' end @props={} end # class RealTime def real_time @subclasses['real-time'] ||= RealTime.new(parent_instance: self, create_children: @create_children) end class EveryMin < ConfigClass def has_multiple_values? false end def _section :'every-min' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class EveryMin def every_min @subclasses['every-min'] ||= EveryMin.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes past quarter-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes past quarter-hour def at prop_get('at') end # Minutes past quarter-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes past half-hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes past half-hour def at prop_get('at') end # Minutes past half-hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}, "sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class WfPrivate < ConfigClass def has_multiple_values? false end def _section :'wf-private' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Every5Mins < ConfigClass def has_multiple_values? false end def _section :'every-5-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "help-string"=>"Minutes Past five minutes"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past five minutes def at prop_get('at') end # Minutes Past five minutes def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every5Mins def every_5_mins @subclasses['every-5-mins'] ||= Every5Mins.new(parent_instance: self, create_children: @create_children) end class Every15Mins < ConfigClass def has_multiple_values? false end def _section :'every-15-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14", "help-string"=>"Minutes Past Quarter-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Quarter-Hour def at prop_get('at') end # Minutes Past Quarter-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every15Mins def every_15_mins @subclasses['every-15-mins'] ||= Every15Mins.new(parent_instance: self, create_children: @create_children) end class Every30Mins < ConfigClass def has_multiple_values? false end def _section :'every-30-mins' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"29", "help-string"=>"Minutes Past Half-Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Half-Hour def at prop_get('at') end # Minutes Past Half-Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Every30Mins def every_30_mins @subclasses['every-30-mins'] ||= Every30Mins.new(parent_instance: self, create_children: @create_children) end class EveryHour < ConfigClass def has_multiple_values? false end def _section :'every-hour' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes Past Hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Minutes Past Hour def at prop_get('at') end # Minutes Past Hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class EveryHour def every_hour @subclasses['every-hour'] ||= EveryHour.new(parent_instance: self, create_children: @create_children) end @props={"sync-to-peer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"Synchronize content with HA peer after download/install"}} # Synchronize content with HA peer after download/install def sync_to_peer prop_get('sync-to-peer') end # Synchronize content with HA peer after download/install def sync_to_peer=(val) prop_set('sync-to-peer', val) end end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class WfPrivate def wf_private @subclasses['wf-private'] ||= WfPrivate.new(parent_instance: self, create_children: @create_children) end class GlobalProtectClientlessVpn < ConfigClass def has_multiple_values? false end def _section :'global-protect-clientless-vpn' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class GlobalProtectClientlessVpn def global_protect_clientless_vpn @subclasses['global-protect-clientless-vpn'] ||= GlobalProtectClientlessVpn.new(parent_instance: self, create_children: @create_children) end class GlobalProtectDatafile < ConfigClass def has_multiple_values? false end def _section :'global-protect-datafile' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Hourly < ConfigClass def has_multiple_values? false end def _section :'hourly' end @props={"at"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"59", "help-string"=>"Minutes past hour"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} # Minutes past hour def at prop_get('at') end # Minutes past hour def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Hourly def hourly @subclasses['hourly'] ||= Hourly.new(parent_instance: self, create_children: @create_children) end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday"}, {"value"=>"monday"}, {"value"=>"tuesday"}, {"value"=>"wednesday"}, {"value"=>"thursday"}, {"value"=>"friday"}, {"value"=>"saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-and-install", "help-string"=>"Download and install"}, {"value"=>"download-only", "help-string"=>"Download but do not install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class GlobalProtectDatafile def global_protect_datafile @subclasses['global-protect-datafile'] ||= GlobalProtectDatafile.new(parent_instance: self, create_children: @create_children) end @props={} end # class UpdateSchedule def update_schedule @subclasses['update-schedule'] ||= UpdateSchedule.new(parent_instance: self, create_children: @create_children) end class MotdAndBanner < ConfigClass def has_multiple_values? false end def _section :'motd-and-banner' end @props={"motd-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/disable message of the day"}, "message"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Message of the day"}, "motd-do-not-display-again"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow do not display again"}, "motd-title"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"Message of the Day", "help-string"=>"Title for message of the day"}, "motd-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "severity"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Icon", "multi-types"=> {"enum"=> [{"value"=>"warning", "help-string"=>"Warning"}, {"value"=>"question", "help-string"=>"Help"}, {"value"=>"error", "help-string"=>"Error"}, {"value"=>"info", "help-string"=>"Information"}]}}, "banner-header"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Header banner text"}, "banner-header-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "banner-header-text-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color18"}]}, "banner-header-footer-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Same banner for header and footer"}, "banner-footer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200", "help-string"=>"Footer banner text"}, "banner-footer-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}]}, "banner-footer-text-color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color18"}]}} # Enable/disable message of the day def motd_enable prop_get('motd-enable') end # Enable/disable message of the day def motd_enable=(val) prop_set('motd-enable', val) end # Message of the day def message prop_get('message') end # Message of the day def message=(val) prop_set('message', val) end # Allow do not display again def motd_do_not_display_again prop_get('motd-do-not-display-again') end # Allow do not display again def motd_do_not_display_again=(val) prop_set('motd-do-not-display-again', val) end # Title for message of the day def motd_title prop_get('motd-title') end # Title for message of the day def motd_title=(val) prop_set('motd-title', val) end def motd_color prop_get('motd-color') end def motd_color=(val) prop_set('motd-color', val) end # Icon def severity prop_get('severity') end # Icon def severity=(val) prop_set('severity', val) end # Header banner text def banner_header prop_get('banner-header') end # Header banner text def banner_header=(val) prop_set('banner-header', val) end def banner_header_color prop_get('banner-header-color') end def banner_header_color=(val) prop_set('banner-header-color', val) end def banner_header_text_color prop_get('banner-header-text-color') end def banner_header_text_color=(val) prop_set('banner-header-text-color', val) end # Same banner for header and footer def banner_header_footer_match prop_get('banner-header-footer-match') end # Same banner for header and footer def banner_header_footer_match=(val) prop_set('banner-header-footer-match', val) end # Footer banner text def banner_footer prop_get('banner-footer') end # Footer banner text def banner_footer=(val) prop_set('banner-footer', val) end def banner_footer_color prop_get('banner-footer-color') end def banner_footer_color=(val) prop_set('banner-footer-color', val) end def banner_footer_text_color prop_get('banner-footer-text-color') end def banner_footer_text_color=(val) prop_set('banner-footer-text-color', val) end end # class MotdAndBanner def motd_and_banner @subclasses['motd-and-banner'] ||= MotdAndBanner.new(parent_instance: self, create_children: @create_children) end @props={"login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200"}, "ack-login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Force Admins to Acknowledge Login Banner"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"256"}, "speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IP address for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "help-string"=>"IP netmask for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "unicast-only"=>"yes", "help-string"=>"Default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"multiple", "help-string"=>"IPv6 Default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods are supported.", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[method/radius]/@name", "#config/shared/authentication-profile/entry[method/tacplus]/@name", "#config/shared/authentication-profile/entry[method/saml-idp]/@name", "#config/shared/authentication-sequence/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}, "syslog-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"client certificate for syslog", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["#config/shared/ssl-tls-service-profile/entry/@name"]}, "fqdn-refresh-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"14399", "default"=>"30", "help-string"=>"Minimal seconds for periodic FQDN refresh"}, "fqdn-stale-entry-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10080", "default"=>"1440", "help-string"=>"Minutes for FQDN stale entry"}, "update-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"PaloAlto Networks update server"}, "server-verification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Verify update server identity"}, "secure-proxy-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z.:/_-])+$", "maxlen"=>"63", "help-string"=>"Secure Proxy server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "secure-proxy-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for secure proxy server"}, "secure-proxy-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Secure Proxy user name to use"}, "secure-proxy-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "help-string"=>"Secure Proxy password to use"}, "lcaas-use-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy access to CDL"}, "auto-renew-mkey-lifetime__31"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"17520", "default"=>"720", "prune-on"=>"fips-mode", "help-string"=> "Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime."}, "locale"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"system default locale", "default"=>"en", "complete-handler"=>"locale-name-completer", "autocomplete"=>"yes", "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"en", "help-string"=>"English"}, {"value"=>"es", "help-string"=>"Spanish"}, {"value"=>"ja", "help-string"=>"Japanese"}, {"value"=>"fr", "help-string"=>"French"}, {"value"=>"zh_CN", "help-string"=>"Chinese-Simplified"}, {"value"=>"zh_TW", "help-string"=>"Chinese-Traditional"}]}}, "domain-lookup-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"512"}, "ip-address-lookup-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"512"}, "timezone"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"Africa/Abidjan"}, {"value"=>"Africa/Accra"}, {"value"=>"Africa/Addis_Ababa"}, {"value"=>"Africa/Algiers"}, {"value"=>"Africa/Asmara"}, {"value"=>"Africa/Asmera"}, {"value"=>"Africa/Bamako"}, {"value"=>"Africa/Bangui"}, {"value"=>"Africa/Banjul"}, {"value"=>"Africa/Bissau"}, {"value"=>"Africa/Blantyre"}, {"value"=>"Africa/Brazzaville"}, {"value"=>"Africa/Bujumbura"}, {"value"=>"Africa/Cairo"}, {"value"=>"Africa/Casablanca"}, {"value"=>"Africa/Ceuta"}, {"value"=>"Africa/Conakry"}, {"value"=>"Africa/Dakar"}, {"value"=>"Africa/Dar_es_Salaam"}, {"value"=>"Africa/Djibouti"}, {"value"=>"Africa/Douala"}, {"value"=>"Africa/El_Aaiun"}, {"value"=>"Africa/Freetown"}, {"value"=>"Africa/Gaborone"}, {"value"=>"Africa/Harare"}, {"value"=>"Africa/Johannesburg"}, {"value"=>"Africa/Kampala"}, {"value"=>"Africa/Khartoum"}, {"value"=>"Africa/Kigali"}, {"value"=>"Africa/Kinshasa"}, {"value"=>"Africa/Lagos"}, {"value"=>"Africa/Libreville"}, {"value"=>"Africa/Lome"}, {"value"=>"Africa/Luanda"}, {"value"=>"Africa/Lubumbashi"}, {"value"=>"Africa/Lusaka"}, {"value"=>"Africa/Malabo"}, {"value"=>"Africa/Maputo"}, {"value"=>"Africa/Maseru"}, {"value"=>"Africa/Mbabane"}, {"value"=>"Africa/Mogadishu"}, {"value"=>"Africa/Monrovia"}, {"value"=>"Africa/Nairobi"}, {"value"=>"Africa/Ndjamena"}, {"value"=>"Africa/Niamey"}, {"value"=>"Africa/Nouakchott"}, {"value"=>"Africa/Ouagadougou"}, {"value"=>"Africa/Porto-Novo"}, {"value"=>"Africa/Sao_Tome"}, {"value"=>"Africa/Timbuktu"}, {"value"=>"Africa/Tripoli"}, {"value"=>"Africa/Tunis"}, {"value"=>"Africa/Windhoek"}, {"value"=>"America/Adak"}, {"value"=>"America/Anchorage"}, {"value"=>"America/Anguilla"}, {"value"=>"America/Antigua"}, {"value"=>"America/Araguaina"}, {"value"=>"America/Argentina/Buenos_Aires"}, {"value"=>"America/Argentina/Catamarca"}, {"value"=>"America/Argentina/ComodRivadavia"}, {"value"=>"America/Argentina/Cordoba"}, {"value"=>"America/Argentina/Jujuy"}, {"value"=>"America/Argentina/La_Rioja"}, {"value"=>"America/Argentina/Mendoza"}, {"value"=>"America/Argentina/Rio_Gallegos"}, {"value"=>"America/Argentina/Salta"}, {"value"=>"America/Argentina/San_Juan"}, {"value"=>"America/Argentina/San_Luis"}, {"value"=>"America/Argentina/Tucuman"}, {"value"=>"America/Argentina/Ushuaia"}, {"value"=>"America/Aruba"}, {"value"=>"America/Asuncion"}, {"value"=>"America/Atikokan"}, {"value"=>"America/Atka"}, {"value"=>"America/Bahia"}, {"value"=>"America/Barbados"}, {"value"=>"America/Belem"}, {"value"=>"America/Belize"}, {"value"=>"America/Blanc-Sablon"}, {"value"=>"America/Boa_Vista"}, {"value"=>"America/Bogota"}, {"value"=>"America/Boise"}, {"value"=>"America/Buenos_Aires"}, {"value"=>"America/Cambridge_Bay"}, {"value"=>"America/Campo_Grande"}, {"value"=>"America/Cancun"}, {"value"=>"America/Caracas"}, {"value"=>"America/Catamarca"}, {"value"=>"America/Cayenne"}, {"value"=>"America/Cayman"}, {"value"=>"America/Chicago"}, {"value"=>"America/Chihuahua"}, {"value"=>"America/Coral_Harbour"}, {"value"=>"America/Cordoba"}, {"value"=>"America/Costa_Rica"}, {"value"=>"America/Cuiaba"}, {"value"=>"America/Curacao"}, {"value"=>"America/Danmarkshavn"}, {"value"=>"America/Dawson"}, {"value"=>"America/Dawson_Creek"}, {"value"=>"America/Denver"}, {"value"=>"America/Detroit"}, {"value"=>"America/Dominica"}, {"value"=>"America/Edmonton"}, {"value"=>"America/Eirunepe"}, {"value"=>"America/El_Salvador"}, {"value"=>"America/Ensenada"}, {"value"=>"America/Fortaleza"}, {"value"=>"America/Fort_Wayne"}, {"value"=>"America/Glace_Bay"}, {"value"=>"America/Godthab"}, {"value"=>"America/Goose_Bay"}, {"value"=>"America/Grand_Turk"}, {"value"=>"America/Grenada"}, {"value"=>"America/Guadeloupe"}, {"value"=>"America/Guatemala"}, {"value"=>"America/Guayaquil"}, {"value"=>"America/Guyana"}, {"value"=>"America/Halifax"}, {"value"=>"America/Havana"}, {"value"=>"America/Hermosillo"}, {"value"=>"America/Indiana/Indianapolis"}, {"value"=>"America/Indiana/Knox"}, {"value"=>"America/Indiana/Marengo"}, {"value"=>"America/Indiana/Petersburg"}, {"value"=>"America/Indianapolis"}, {"value"=>"America/Indiana/Tell_City"}, {"value"=>"America/Indiana/Vevay"}, {"value"=>"America/Indiana/Vincennes"}, {"value"=>"America/Indiana/Winamac"}, {"value"=>"America/Inuvik"}, {"value"=>"America/Iqaluit"}, {"value"=>"America/Jamaica"}, {"value"=>"America/Jujuy"}, {"value"=>"America/Juneau"}, {"value"=>"America/Kentucky/Louisville"}, {"value"=>"America/Kentucky/Monticello"}, {"value"=>"America/Knox_IN"}, {"value"=>"America/La_Paz"}, {"value"=>"America/Lima"}, {"value"=>"America/Los_Angeles"}, {"value"=>"America/Louisville"}, {"value"=>"America/Maceio"}, {"value"=>"America/Managua"}, {"value"=>"America/Manaus"}, {"value"=>"America/Marigot"}, {"value"=>"America/Martinique"}, {"value"=>"America/Mazatlan"}, {"value"=>"America/Mendoza"}, {"value"=>"America/Menominee"}, {"value"=>"America/Merida"}, {"value"=>"America/Mexico_City"}, {"value"=>"America/Miquelon"}, {"value"=>"America/Moncton"}, {"value"=>"America/Monterrey"}, {"value"=>"America/Montevideo"}, {"value"=>"America/Montreal"}, {"value"=>"America/Montserrat"}, {"value"=>"America/Nassau"}, {"value"=>"America/New_York"}, {"value"=>"America/Nipigon"}, {"value"=>"America/Nome"}, {"value"=>"America/Noronha"}, {"value"=>"America/North_Dakota/Center"}, {"value"=>"America/North_Dakota/New_Salem"}, {"value"=>"America/Panama"}, {"value"=>"America/Pangnirtung"}, {"value"=>"America/Paramaribo"}, {"value"=>"America/Phoenix"}, {"value"=>"America/Port-au-Prince"}, {"value"=>"America/Porto_Acre"}, {"value"=>"America/Port_of_Spain"}, {"value"=>"America/Porto_Velho"}, {"value"=>"America/Puerto_Rico"}, {"value"=>"America/Rainy_River"}, {"value"=>"America/Rankin_Inlet"}, {"value"=>"America/Recife"}, {"value"=>"America/Regina"}, {"value"=>"America/Resolute"}, {"value"=>"America/Rio_Branco"}, {"value"=>"America/Rosario"}, {"value"=>"America/Santarem"}, {"value"=>"America/Santiago"}, {"value"=>"America/Santo_Domingo"}, {"value"=>"America/Sao_Paulo"}, {"value"=>"America/Scoresbysund"}, {"value"=>"America/Shiprock"}, {"value"=>"America/St_Barthelemy"}, {"value"=>"America/St_Johns"}, {"value"=>"America/St_Kitts"}, {"value"=>"America/St_Lucia"}, {"value"=>"America/St_Thomas"}, {"value"=>"America/St_Vincent"}, {"value"=>"America/Swift_Current"}, {"value"=>"America/Tegucigalpa"}, {"value"=>"America/Thule"}, {"value"=>"America/Thunder_Bay"}, {"value"=>"America/Tijuana"}, {"value"=>"America/Toronto"}, {"value"=>"America/Tortola"}, {"value"=>"America/Vancouver"}, {"value"=>"America/Virgin"}, {"value"=>"America/Whitehorse"}, {"value"=>"America/Winnipeg"}, {"value"=>"America/Yakutat"}, {"value"=>"America/Yellowknife"}, {"value"=>"Antarctica/Casey"}, {"value"=>"Antarctica/Davis"}, {"value"=>"Antarctica/DumontDUrville"}, {"value"=>"Antarctica/Mawson"}, {"value"=>"Antarctica/McMurdo"}, {"value"=>"Antarctica/Palmer"}, {"value"=>"Antarctica/Rothera"}, {"value"=>"Antarctica/South_Pole"}, {"value"=>"Antarctica/Syowa"}, {"value"=>"Antarctica/Vostok"}, {"value"=>"Arctic/Longyearbyen"}, {"value"=>"Asia/Aden"}, {"value"=>"Asia/Almaty"}, {"value"=>"Asia/Amman"}, {"value"=>"Asia/Anadyr"}, {"value"=>"Asia/Aqtau"}, {"value"=>"Asia/Aqtobe"}, {"value"=>"Asia/Ashgabat"}, {"value"=>"Asia/Ashkhabad"}, {"value"=>"Asia/Baghdad"}, {"value"=>"Asia/Bahrain"}, {"value"=>"Asia/Baku"}, {"value"=>"Asia/Bangkok"}, {"value"=>"Asia/Beirut"}, {"value"=>"Asia/Bishkek"}, {"value"=>"Asia/Brunei"}, {"value"=>"Asia/Calcutta"}, {"value"=>"Asia/Choibalsan"}, {"value"=>"Asia/Chongqing"}, {"value"=>"Asia/Chungking"}, {"value"=>"Asia/Colombo"}, {"value"=>"Asia/Dacca"}, {"value"=>"Asia/Damascus"}, {"value"=>"Asia/Dhaka"}, {"value"=>"Asia/Dili"}, {"value"=>"Asia/Dubai"}, {"value"=>"Asia/Dushanbe"}, {"value"=>"Asia/Gaza"}, {"value"=>"Asia/Harbin"}, {"value"=>"Asia/Ho_Chi_Minh"}, {"value"=>"Asia/Hong_Kong"}, {"value"=>"Asia/Hovd"}, {"value"=>"Asia/Irkutsk"}, {"value"=>"Asia/Istanbul"}, {"value"=>"Asia/Jakarta"}, {"value"=>"Asia/Jayapura"}, {"value"=>"Asia/Jerusalem"}, {"value"=>"Asia/Kabul"}, {"value"=>"Asia/Kamchatka"}, {"value"=>"Asia/Karachi"}, {"value"=>"Asia/Kashgar"}, {"value"=>"Asia/Kathmandu"}, {"value"=>"Asia/Katmandu"}, {"value"=>"Asia/Kolkata"}, {"value"=>"Asia/Krasnoyarsk"}, {"value"=>"Asia/Kuala_Lumpur"}, {"value"=>"Asia/Kuching"}, {"value"=>"Asia/Kuwait"}, {"value"=>"Asia/Macao"}, {"value"=>"Asia/Macau"}, {"value"=>"Asia/Magadan"}, {"value"=>"Asia/Makassar"}, {"value"=>"Asia/Manila"}, {"value"=>"Asia/Muscat"}, {"value"=>"Asia/Nicosia"}, {"value"=>"Asia/Novokuznetsk"}, {"value"=>"Asia/Novosibirsk"}, {"value"=>"Asia/Omsk"}, {"value"=>"Asia/Oral"}, {"value"=>"Asia/Phnom_Penh"}, {"value"=>"Asia/Pontianak"}, {"value"=>"Asia/Pyongyang"}, {"value"=>"Asia/Qatar"}, {"value"=>"Asia/Qyzylorda"}, {"value"=>"Asia/Rangoon"}, {"value"=>"Asia/Riyadh"}, {"value"=>"Asia/Riyadh87"}, {"value"=>"Asia/Riyadh88"}, {"value"=>"Asia/Riyadh89"}, {"value"=>"Asia/Saigon"}, {"value"=>"Asia/Sakhalin"}, {"value"=>"Asia/Samarkand"}, {"value"=>"Asia/Seoul"}, {"value"=>"Asia/Shanghai"}, {"value"=>"Asia/Singapore"}, {"value"=>"Asia/Taipei"}, {"value"=>"Asia/Tashkent"}, {"value"=>"Asia/Tbilisi"}, {"value"=>"Asia/Tehran"}, {"value"=>"Asia/Tel_Aviv"}, {"value"=>"Asia/Thimbu"}, {"value"=>"Asia/Thimphu"}, {"value"=>"Asia/Tokyo"}, {"value"=>"Asia/Ujung_Pandang"}, {"value"=>"Asia/Ulaanbaatar"}, {"value"=>"Asia/Ulan_Bator"}, {"value"=>"Asia/Urumqi"}, {"value"=>"Asia/Vientiane"}, {"value"=>"Asia/Vladivostok"}, {"value"=>"Asia/Yakutsk"}, {"value"=>"Asia/Yekaterinburg"}, {"value"=>"Asia/Yerevan"}, {"value"=>"Atlantic/Azores"}, {"value"=>"Atlantic/Bermuda"}, {"value"=>"Atlantic/Canary"}, {"value"=>"Atlantic/Cape_Verde"}, {"value"=>"Atlantic/Faeroe"}, {"value"=>"Atlantic/Faroe"}, {"value"=>"Atlantic/Jan_Mayen"}, {"value"=>"Atlantic/Madeira"}, {"value"=>"Atlantic/Reykjavik"}, {"value"=>"Atlantic/South_Georgia"}, {"value"=>"Atlantic/Stanley"}, {"value"=>"Atlantic/St_Helena"}, {"value"=>"Australia/ACT"}, {"value"=>"Australia/Adelaide"}, {"value"=>"Australia/Brisbane"}, {"value"=>"Australia/Broken_Hill"}, {"value"=>"Australia/Canberra"}, {"value"=>"Australia/Currie"}, {"value"=>"Australia/Darwin"}, {"value"=>"Australia/Eucla"}, {"value"=>"Australia/Hobart"}, {"value"=>"Australia/LHI"}, {"value"=>"Australia/Lindeman"}, {"value"=>"Australia/Lord_Howe"}, {"value"=>"Australia/Melbourne"}, {"value"=>"Australia/North"}, {"value"=>"Australia/NSW"}, {"value"=>"Australia/Perth"}, {"value"=>"Australia/Queensland"}, {"value"=>"Australia/South"}, {"value"=>"Australia/Sydney"}, {"value"=>"Australia/Tasmania"}, {"value"=>"Australia/Victoria"}, {"value"=>"Australia/West"}, {"value"=>"Australia/Yancowinna"}, {"value"=>"Brazil/Acre"}, {"value"=>"Brazil/DeNoronha"}, {"value"=>"Brazil/East"}, {"value"=>"Brazil/West"}, {"value"=>"Canada/Atlantic"}, {"value"=>"Canada/Central"}, {"value"=>"Canada/Eastern"}, {"value"=>"Canada/East-Saskatchewan"}, {"value"=>"Canada/Mountain"}, {"value"=>"Canada/Newfoundland"}, {"value"=>"Canada/Pacific"}, {"value"=>"Canada/Saskatchewan"}, {"value"=>"Canada/Yukon"}, {"value"=>"CET"}, {"value"=>"Chile/Continental"}, {"value"=>"Chile/EasterIsland"}, {"value"=>"CST6CDT"}, {"value"=>"Cuba"}, {"value"=>"EET"}, {"value"=>"Egypt"}, {"value"=>"Eire"}, {"value"=>"EST"}, {"value"=>"EST5EDT"}, {"value"=>"Etc/GMT"}, {"value"=>"Etc/GMT0"}, {"value"=>"Etc/GMT-0"}, {"value"=>"Etc/GMT+0"}, {"value"=>"Etc/GMT-1"}, {"value"=>"Etc/GMT+1"}, {"value"=>"Etc/GMT-10"}, {"value"=>"Etc/GMT+10"}, {"value"=>"Etc/GMT-11"}, {"value"=>"Etc/GMT+11"}, {"value"=>"Etc/GMT-12"}, {"value"=>"Etc/GMT+12"}, {"value"=>"Etc/GMT-13"}, {"value"=>"Etc/GMT-14"}, {"value"=>"Etc/GMT-2"}, {"value"=>"Etc/GMT+2"}, {"value"=>"Etc/GMT-3"}, {"value"=>"Etc/GMT+3"}, {"value"=>"Etc/GMT-4"}, {"value"=>"Etc/GMT+4"}, {"value"=>"Etc/GMT-5"}, {"value"=>"Etc/GMT+5"}, {"value"=>"Etc/GMT-6"}, {"value"=>"Etc/GMT+6"}, {"value"=>"Etc/GMT-7"}, {"value"=>"Etc/GMT+7"}, {"value"=>"Etc/GMT-8"}, {"value"=>"Etc/GMT+8"}, {"value"=>"Etc/GMT-9"}, {"value"=>"Etc/GMT+9"}, {"value"=>"Etc/Greenwich"}, {"value"=>"Etc/UCT"}, {"value"=>"Etc/Universal"}, {"value"=>"Etc/UTC"}, {"value"=>"Etc/Zulu"}, {"value"=>"Europe/Amsterdam"}, {"value"=>"Europe/Andorra"}, {"value"=>"Europe/Athens"}, {"value"=>"Europe/Belfast"}, {"value"=>"Europe/Belgrade"}, {"value"=>"Europe/Berlin"}, {"value"=>"Europe/Bratislava"}, {"value"=>"Europe/Brussels"}, {"value"=>"Europe/Bucharest"}, {"value"=>"Europe/Budapest"}, {"value"=>"Europe/Chisinau"}, {"value"=>"Europe/Copenhagen"}, {"value"=>"Europe/Dublin"}, {"value"=>"Europe/Gibraltar"}, {"value"=>"Europe/Guernsey"}, {"value"=>"Europe/Helsinki"}, {"value"=>"Europe/Isle_of_Man"}, {"value"=>"Europe/Istanbul"}, {"value"=>"Europe/Jersey"}, {"value"=>"Europe/Kaliningrad"}, {"value"=>"Europe/Kiev"}, {"value"=>"Europe/Lisbon"}, {"value"=>"Europe/Ljubljana"}, {"value"=>"Europe/London"}, {"value"=>"Europe/Luxembourg"}, {"value"=>"Europe/Madrid"}, {"value"=>"Europe/Malta"}, {"value"=>"Europe/Mariehamn"}, {"value"=>"Europe/Minsk"}, {"value"=>"Europe/Monaco"}, {"value"=>"Europe/Moscow"}, {"value"=>"Europe/Nicosia"}, {"value"=>"Europe/Oslo"}, {"value"=>"Europe/Paris"}, {"value"=>"Europe/Podgorica"}, {"value"=>"Europe/Prague"}, {"value"=>"Europe/Riga"}, {"value"=>"Europe/Rome"}, {"value"=>"Europe/Samara"}, {"value"=>"Europe/San_Marino"}, {"value"=>"Europe/Sarajevo"}, {"value"=>"Europe/Simferopol"}, {"value"=>"Europe/Skopje"}, {"value"=>"Europe/Sofia"}, {"value"=>"Europe/Stockholm"}, {"value"=>"Europe/Tallinn"}, {"value"=>"Europe/Tirane"}, {"value"=>"Europe/Tiraspol"}, {"value"=>"Europe/Uzhgorod"}, {"value"=>"Europe/Vaduz"}, {"value"=>"Europe/Vatican"}, {"value"=>"Europe/Vienna"}, {"value"=>"Europe/Vilnius"}, {"value"=>"Europe/Volgograd"}, {"value"=>"Europe/Warsaw"}, {"value"=>"Europe/Zagreb"}, {"value"=>"Europe/Zaporozhye"}, {"value"=>"Europe/Zurich"}, {"value"=>"Factory"}, {"value"=>"GB"}, {"value"=>"GB-Eire"}, {"value"=>"GMT"}, {"value"=>"GMT0"}, {"value"=>"GMT-0"}, {"value"=>"GMT+0"}, {"value"=>"Greenwich"}, {"value"=>"Hongkong"}, {"value"=>"HST"}, {"value"=>"Iceland"}, {"value"=>"Indian/Antananarivo"}, {"value"=>"Indian/Chagos"}, {"value"=>"Indian/Christmas"}, {"value"=>"Indian/Cocos"}, {"value"=>"Indian/Comoro"}, {"value"=>"Indian/Kerguelen"}, {"value"=>"Indian/Mahe"}, {"value"=>"Indian/Maldives"}, {"value"=>"Indian/Mauritius"}, {"value"=>"Indian/Mayotte"}, {"value"=>"Indian/Reunion"}, {"value"=>"Iran"}, {"value"=>"Israel"}, {"value"=>"Jamaica"}, {"value"=>"Japan"}, {"value"=>"Kwajalein"}, {"value"=>"Libya"}, {"value"=>"MET"}, {"value"=>"Mexico/BajaNorte"}, {"value"=>"Mexico/BajaSur"}, {"value"=>"Mexico/General"}, {"value"=>"Mideast/Riyadh87"}, {"value"=>"Mideast/Riyadh88"}, {"value"=>"Mideast/Riyadh89"}, {"value"=>"MST"}, {"value"=>"MST7MDT"}, {"value"=>"Navajo"}, {"value"=>"NZ"}, {"value"=>"NZ-CHAT"}, {"value"=>"Pacific/Apia"}, {"value"=>"Pacific/Auckland"}, {"value"=>"Pacific/Chatham"}, {"value"=>"Pacific/Easter"}, {"value"=>"Pacific/Efate"}, {"value"=>"Pacific/Enderbury"}, {"value"=>"Pacific/Fakaofo"}, {"value"=>"Pacific/Fiji"}, {"value"=>"Pacific/Funafuti"}, {"value"=>"Pacific/Galapagos"}, {"value"=>"Pacific/Gambier"}, {"value"=>"Pacific/Guadalcanal"}, {"value"=>"Pacific/Guam"}, {"value"=>"Pacific/Honolulu"}, {"value"=>"Pacific/Johnston"}, {"value"=>"Pacific/Kiritimati"}, {"value"=>"Pacific/Kosrae"}, {"value"=>"Pacific/Kwajalein"}, {"value"=>"Pacific/Majuro"}, {"value"=>"Pacific/Marquesas"}, {"value"=>"Pacific/Midway"}, {"value"=>"Pacific/Nauru"}, {"value"=>"Pacific/Niue"}, {"value"=>"Pacific/Norfolk"}, {"value"=>"Pacific/Noumea"}, {"value"=>"Pacific/Pago_Pago"}, {"value"=>"Pacific/Palau"}, {"value"=>"Pacific/Pitcairn"}, {"value"=>"Pacific/Ponape"}, {"value"=>"Pacific/Port_Moresby"}, {"value"=>"Pacific/Rarotonga"}, {"value"=>"Pacific/Saipan"}, {"value"=>"Pacific/Samoa"}, {"value"=>"Pacific/Tahiti"}, {"value"=>"Pacific/Tarawa"}, {"value"=>"Pacific/Tongatapu"}, {"value"=>"Pacific/Truk"}, {"value"=>"Pacific/Wake"}, {"value"=>"Pacific/Wallis"}, {"value"=>"Pacific/Yap"}, {"value"=>"Poland"}, {"value"=>"Portugal"}, {"value"=>"PRC"}, {"value"=>"PST8PDT"}, {"value"=>"ROC"}, {"value"=>"ROK"}, {"value"=>"Singapore"}, {"value"=>"Turkey"}, {"value"=>"UCT"}, {"value"=>"Universal"}, {"value"=>"US/Alaska"}, {"value"=>"US/Aleutian"}, {"value"=>"US/Arizona"}, {"value"=>"US/Central"}, {"value"=>"US/Eastern"}, {"value"=>"US/East-Indiana"}, {"value"=>"US/Hawaii"}, {"value"=>"US/Indiana-Starke"}, {"value"=>"US/Michigan"}, {"value"=>"US/Mountain"}, {"value"=>"US/Pacific"}, {"value"=>"US/Samoa"}, {"value"=>"UTC"}, {"value"=>"WET"}, {"value"=>"W-SU"}, {"value"=>"Zulu"}]}} def login_banner prop_get('login-banner') end def login_banner=(val) prop_set('login-banner', val) end # Force Admins to Acknowledge Login Banner def ack_login_banner prop_get('ack-login-banner') end # Force Admins to Acknowledge Login Banner def ack_login_banner=(val) prop_set('ack-login-banner', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def domain prop_get('domain') end def domain=(val) prop_set('domain', val) end # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods are supported. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and SAML methods are supported. def authentication_profile=(val) prop_set('authentication-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # client certificate for syslog def syslog_certificate prop_get('syslog-certificate') end # client certificate for syslog def syslog_certificate=(val) prop_set('syslog-certificate', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Minimal seconds for periodic FQDN refresh def fqdn_refresh_time prop_get('fqdn-refresh-time') end # Minimal seconds for periodic FQDN refresh def fqdn_refresh_time=(val) prop_set('fqdn-refresh-time', val) end # Minutes for FQDN stale entry def fqdn_stale_entry_timeout prop_get('fqdn-stale-entry-timeout') end # Minutes for FQDN stale entry def fqdn_stale_entry_timeout=(val) prop_set('fqdn-stale-entry-timeout', val) end # PaloAlto Networks update server def update_server prop_get('update-server') end # PaloAlto Networks update server def update_server=(val) prop_set('update-server', val) end # Verify update server identity def server_verification prop_get('server-verification') end # Verify update server identity def server_verification=(val) prop_set('server-verification', val) end # Secure Proxy server to use def secure_proxy_server prop_get('secure-proxy-server') end # Secure Proxy server to use def secure_proxy_server=(val) prop_set('secure-proxy-server', val) end # Port for secure proxy server def secure_proxy_port prop_get('secure-proxy-port') end # Port for secure proxy server def secure_proxy_port=(val) prop_set('secure-proxy-port', val) end # Secure Proxy user name to use def secure_proxy_user prop_get('secure-proxy-user') end # Secure Proxy user name to use def secure_proxy_user=(val) prop_set('secure-proxy-user', val) end # Secure Proxy password to use def secure_proxy_password prop_get('secure-proxy-password') end # Secure Proxy password to use def secure_proxy_password=(val) prop_set('secure-proxy-password', val) end # Enable proxy access to CDL def lcaas_use_proxy prop_get('lcaas-use-proxy') end # Enable proxy access to CDL def lcaas_use_proxy=(val) prop_set('lcaas-use-proxy', val) end # Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime. def auto_renew_mkey_lifetime__31 prop_get('auto-renew-mkey-lifetime__31') end # Automatically renew master key lifetime when it expires. Extended time in hours. 0 means disable auto-renew lifetime. def auto_renew_mkey_lifetime__31=(val) prop_set('auto-renew-mkey-lifetime__31', val) end # system default locale def locale prop_get('locale') end # system default locale def locale=(val) prop_set('locale', val) end def domain_lookup_url prop_get('domain-lookup-url') end def domain_lookup_url=(val) prop_set('domain-lookup-url', val) end def ip_address_lookup_url prop_get('ip-address-lookup-url') end def ip_address_lookup_url=(val) prop_set('ip-address-lookup-url', val) end def timezone prop_get('timezone') end def timezone=(val) prop_set('timezone', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end @props={"reserve-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"reserve translated IP for specified time"}, "reserve-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "default"=>"120", "help-string"=>"reserve time value in seconds"}, "dipp-oversub"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"DIPP oversubscription ratio", "enum"=> [{"value"=>"1x", "help-string"=>"No oversubscription"}, {"value"=>"2x", "help-string"=>"2 times oversubscription"}, {"value"=>"4x", "help-string"=>"4 times oversubscription"}, {"value"=>"8x", "help-string"=>"8 times oversubscription"}]}} # reserve translated IP for specified time def reserve_ip prop_get('reserve-ip') end # reserve translated IP for specified time def reserve_ip=(val) prop_set('reserve-ip', val) end # reserve time value in seconds def reserve_time prop_get('reserve-time') end # reserve time value in seconds def reserve_time=(val) prop_set('reserve-time', val) end # DIPP oversubscription ratio def dipp_oversub prop_get('dipp-oversub') end # DIPP oversubscription ratio def dipp_oversub=(val) prop_set('dipp-oversub', val) end end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class JumboFrame < ConfigClass def has_multiple_values? false end def _section :'jumbo-frame' end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"9192", "min"=>"512", "max"=>"9216", "help-string"=>"device MTU excluding Ethernet header"}} # device MTU excluding Ethernet header def mtu prop_get('mtu') end # device MTU excluding Ethernet header def mtu=(val) prop_set('mtu', val) end end # class JumboFrame def jumbo_frame @subclasses['jumbo-frame'] ||= JumboFrame.new(parent_instance: self, create_children: @create_children) end class Icmpv6RateLimit < ConfigClass def has_multiple_values? false end def _section :'icmpv6-rate-limit' end @props={"bucket-size"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"100", "min"=>"10", "max"=>"65535", "help-string"=>"token-bucket size for ICMPv6 error rate limiting"}, "packet-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"100", "min"=>"1", "max"=>"65535", "help-string"=>"ICMPv6 error packet limit per second"}} # token-bucket size for ICMPv6 error rate limiting def bucket_size prop_get('bucket-size') end # token-bucket size for ICMPv6 error rate limiting def bucket_size=(val) prop_set('bucket-size', val) end # ICMPv6 error packet limit per second def packet_rate prop_get('packet-rate') end # ICMPv6 error packet limit per second def packet_rate=(val) prop_set('packet-rate', val) end end # class Icmpv6RateLimit def icmpv6_rate_limit @subclasses['icmpv6-rate-limit'] ||= Icmpv6RateLimit.new(parent_instance: self, create_children: @create_children) end class Nat64 < ConfigClass def has_multiple_values? false end def _section :'nat64' end @props={"ipv6-min-network-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1280", "max"=>"9216", "default"=>"1280", "help-string"=>"NAT64 minimum IPv6 MTU in the network"}} # NAT64 minimum IPv6 MTU in the network def ipv6_min_network_mtu prop_get('ipv6-min-network-mtu') end # NAT64 minimum IPv6 MTU in the network def ipv6_min_network_mtu=(val) prop_set('ipv6-min-network-mtu', val) end end # class Nat64 def nat64 @subclasses['nat64'] ||= Nat64.new(parent_instance: self, create_children: @create_children) end class Packet < ConfigClass def has_multiple_values? false end def _section :'packet' end @props={"ip-frag-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable ip frag packet limit"}} # enable/disable ip frag packet limit def ip_frag_limit prop_get('ip-frag-limit') end # enable/disable ip frag packet limit def ip_frag_limit=(val) prop_set('ip-frag-limit', val) end end # class Packet def packet @subclasses['packet'] ||= Packet.new(parent_instance: self, create_children: @create_children) end class Util < ConfigClass def has_multiple_values? false end def _section :'util' end @props={"assert-crash-once"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable assert crash only one"}} # enable/disable assert crash only one def assert_crash_once prop_get('assert-crash-once') end # enable/disable assert crash only one def assert_crash_once=(val) prop_set('assert-crash-once', val) end end # class Util def util @subclasses['util'] ||= Util.new(parent_instance: self, create_children: @create_children) end class PanUrlDb < ConfigClass def has_multiple_values? false end def _section :'pan-url-db' end @props={"cloud-static-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1023", "help-string"=>"Cloud list separated by commas"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"300", "min"=>"1", "max"=>"300", "help-string"=>"Timeout for request to cloud"}} # Cloud list separated by commas def cloud_static_list prop_get('cloud-static-list') end # Cloud list separated by commas def cloud_static_list=(val) prop_set('cloud-static-list', val) end # Timeout for request to cloud def timeout prop_get('timeout') end # Timeout for request to cloud def timeout=(val) prop_set('timeout', val) end end # class PanUrlDb def pan_url_db @subclasses['pan-url-db'] ||= PanUrlDb.new(parent_instance: self, create_children: @create_children) end class Hawkeye < ConfigClass def has_multiple_values? false end def _section :'hawkeye' end @props={"public-cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([$a-zA-Z0-9./_-])+$", "default"=>"hawkeye.services-edge.paloaltonetworks.com", "loose-membership"=>"yes", "maxlen"=>"1023", "help-string"=> "Hawkeye FQDN/Server. Default hawkeye.services-edge.paloaltonetworks.com", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # Hawkeye FQDN/Server. Default hawkeye.services-edge.paloaltonetworks.com def public_cloud_server prop_get('public-cloud-server') end # Hawkeye FQDN/Server. Default hawkeye.services-edge.paloaltonetworks.com def public_cloud_server=(val) prop_set('public-cloud-server', val) end end # class Hawkeye def hawkeye @subclasses['hawkeye'] ||= Hawkeye.new(parent_instance: self, create_children: @create_children) end class GlobalProtect < ConfigClass def has_multiple_values? false end def _section :'global-protect' end @props={"timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"3", "max"=>"150", "help-string"=>"timeout in seconds for global-protect gateways"}, "keepalive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"3", "max"=>"150", "help-string"=>"keepalive in seconds for global-protect gateways"}, "enable-external-gateway-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable external gateway priority by source location for best gateway selection"}, "location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"100", "help-string"=>"location for portal/gateway with max length 100"}} # timeout in seconds for global-protect gateways def timeout prop_get('timeout') end # timeout in seconds for global-protect gateways def timeout=(val) prop_set('timeout', val) end # keepalive in seconds for global-protect gateways def keepalive prop_get('keepalive') end # keepalive in seconds for global-protect gateways def keepalive=(val) prop_set('keepalive', val) end # enable external gateway priority by source location for best gateway selection def enable_external_gateway_priority prop_get('enable-external-gateway-priority') end # enable external gateway priority by source location for best gateway selection def enable_external_gateway_priority=(val) prop_set('enable-external-gateway-priority', val) end # location for portal/gateway with max length 100 def location prop_get('location') end # location for portal/gateway with max length 100 def location=(val) prop_set('location', val) end end # class GlobalProtect def global_protect @subclasses['global-protect'] ||= GlobalProtect.new(parent_instance: self, create_children: @create_children) end class L3Service < ConfigClass def has_multiple_values? false end def _section :'l3-service' end @props={"timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"3", "max"=>"125", "help-string"=>"timeout in seconds for l3 services"}} # timeout in seconds for l3 services def timeout prop_get('timeout') end # timeout in seconds for l3 services def timeout=(val) prop_set('timeout', val) end end # class L3Service def l3_service @subclasses['l3-service'] ||= L3Service.new(parent_instance: self, create_children: @create_children) end class CaptivePortal < ConfigClass def has_multiple_values? false end def _section :'captive-portal' end @props={"number-workers"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"2", "max"=>"12", "help-string"=>"number of captive-portal workers"}, "disable-token"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable token caculation when do captive-portal"}} # number of captive-portal workers def number_workers prop_get('number-workers') end # number of captive-portal workers def number_workers=(val) prop_set('number-workers', val) end # disable token caculation when do captive-portal def disable_token prop_get('disable-token') end # disable token caculation when do captive-portal def disable_token=(val) prop_set('disable-token', val) end end # class CaptivePortal def captive_portal @subclasses['captive-portal'] ||= CaptivePortal.new(parent_instance: self, create_children: @create_children) end class Application < ConfigClass def has_multiple_values? false end def _section :'application' end class Traceroute < ConfigClass def has_multiple_values? false end def _section :'traceroute' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable application identification for traceroute"}, "ttl-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"30", "help-string"=>"set the TTL threshold value for traceroute identification"}} # enable/disable application identification for traceroute def enable prop_get('enable') end # enable/disable application identification for traceroute def enable=(val) prop_set('enable', val) end # set the TTL threshold value for traceroute identification def ttl_threshold prop_get('ttl-threshold') end # set the TTL threshold value for traceroute identification def ttl_threshold=(val) prop_set('ttl-threshold', val) end end # class Traceroute def traceroute @subclasses['traceroute'] ||= Traceroute.new(parent_instance: self, create_children: @create_children) end @props={"identify-unknown-traffic-by-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "set if unknown traffic should be identified by source or destination port"}, "dump-unknown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"on", "help-string"=>"set if unknown application capture should be enabled", "enum"=> [{"value"=>"on", "help-string"=>"Turn on unknown application dump"}, {"value"=>"off", "help-string"=>"Turn off unknown application dump"}]}, "cache"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if application cache should be enabled"}, "use-cache-for-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to use the App-ID cache result for identification"}, "cache-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"16", "min"=>"1", "max"=>"65535", "help-string"=>"set application cache threshold"}, "supernode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if supernode detection should be enabled"}, "heuristics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if heuristics detection should be enabled"}, "notify-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "set if user should be notified when web-application is blocked"}, "bypass-exceed-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to skip inspection of session if queue limit is exceeded"}} # set if unknown traffic should be identified by source or destination port def identify_unknown_traffic_by_port prop_get('identify-unknown-traffic-by-port') end # set if unknown traffic should be identified by source or destination port def identify_unknown_traffic_by_port=(val) prop_set('identify-unknown-traffic-by-port', val) end # set if unknown application capture should be enabled def dump_unknown prop_get('dump-unknown') end # set if unknown application capture should be enabled def dump_unknown=(val) prop_set('dump-unknown', val) end # set if application cache should be enabled def cache prop_get('cache') end # set if application cache should be enabled def cache=(val) prop_set('cache', val) end # Set to use the App-ID cache result for identification def use_cache_for_identification prop_get('use-cache-for-identification') end # Set to use the App-ID cache result for identification def use_cache_for_identification=(val) prop_set('use-cache-for-identification', val) end # set application cache threshold def cache_threshold prop_get('cache-threshold') end # set application cache threshold def cache_threshold=(val) prop_set('cache-threshold', val) end # set if supernode detection should be enabled def supernode prop_get('supernode') end # set if supernode detection should be enabled def supernode=(val) prop_set('supernode', val) end # set if heuristics detection should be enabled def heuristics prop_get('heuristics') end # set if heuristics detection should be enabled def heuristics=(val) prop_set('heuristics', val) end # set if user should be notified when web-application is blocked def notify_user prop_get('notify-user') end # set if user should be notified when web-application is blocked def notify_user=(val) prop_set('notify-user', val) end # whether to skip inspection of session if queue limit is exceeded def bypass_exceed_queue prop_get('bypass-exceed-queue') end # whether to skip inspection of session if queue limit is exceeded def bypass_exceed_queue=(val) prop_set('bypass-exceed-queue', val) end end # class Application def application @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) end class Autofocus < ConfigClass def has_multiple_values? false end def _section :'autofocus' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable AutoFocus service"}, "autofocus-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"1024", "default"=>"https://autofocus.paloaltonetworks.com:10443", "help-string"=>"URL for AutoFocus server"}, "query-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"15", "max"=>"3600", "default"=>"15", "help-string"=>"Query time out in seconds"}} # Enable AutoFocus service def enabled prop_get('enabled') end # Enable AutoFocus service def enabled=(val) prop_set('enabled', val) end # URL for AutoFocus server def autofocus_url prop_get('autofocus-url') end # URL for AutoFocus server def autofocus_url=(val) prop_set('autofocus-url', val) end # Query time out in seconds def query_timeout prop_get('query-timeout') end # Query time out in seconds def query_timeout=(val) prop_set('query-timeout', val) end end # class Autofocus def autofocus @subclasses['autofocus'] ||= Autofocus.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class FileSizeLimit < XML::ConfigClass def has_multiple_values? true end def _section :'file-size-limit' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"file type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/tdb/wf-file-class/entry/@name[(. !='pdns') and (. !='email-link')]"]}, "size-limit"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"file size limit", "complete-handler"=>"wf-file-size-limit-completer"}} # file type def name prop_get('@name') end # file size limit def size_limit prop_get('size-limit') end # file size limit def size_limit=(val) prop_set('size-limit', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class FileSizeLimit def file_size_limit if @create_children @subclasses['file-size-limit'] ||= FileSizeLimit.new(parent_instance: self, create_children: @create_children) else FileSizeLimit.new(parent_instance: self) end end class SessionInfoSelect < ConfigClass def has_multiple_values? false end def _section :'session-info-select' end @props={"exclude-src-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude source IP address"}, "exclude-src-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude source port"}, "exclude-dest-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude destination IP address"}, "exclude-dest-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude destination port"}, "exclude-vsys-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude vsys id"}, "exclude-app-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude application name"}, "exclude-username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude user name"}, "exclude-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude url"}, "exclude-filename"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude file name"}, "exclude-email-sender"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude email sender"}, "exclude-email-recipient"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude email recipient"}, "exclude-email-subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"exclude email subject"}} # exclude source IP address def exclude_src_ip prop_get('exclude-src-ip') end # exclude source IP address def exclude_src_ip=(val) prop_set('exclude-src-ip', val) end # exclude source port def exclude_src_port prop_get('exclude-src-port') end # exclude source port def exclude_src_port=(val) prop_set('exclude-src-port', val) end # exclude destination IP address def exclude_dest_ip prop_get('exclude-dest-ip') end # exclude destination IP address def exclude_dest_ip=(val) prop_set('exclude-dest-ip', val) end # exclude destination port def exclude_dest_port prop_get('exclude-dest-port') end # exclude destination port def exclude_dest_port=(val) prop_set('exclude-dest-port', val) end # exclude vsys id def exclude_vsys_id prop_get('exclude-vsys-id') end # exclude vsys id def exclude_vsys_id=(val) prop_set('exclude-vsys-id', val) end # exclude application name def exclude_app_name prop_get('exclude-app-name') end # exclude application name def exclude_app_name=(val) prop_set('exclude-app-name', val) end # exclude user name def exclude_username prop_get('exclude-username') end # exclude user name def exclude_username=(val) prop_set('exclude-username', val) end # exclude url def exclude_url prop_get('exclude-url') end # exclude url def exclude_url=(val) prop_set('exclude-url', val) end # exclude file name def exclude_filename prop_get('exclude-filename') end # exclude file name def exclude_filename=(val) prop_set('exclude-filename', val) end # exclude email sender def exclude_email_sender prop_get('exclude-email-sender') end # exclude email sender def exclude_email_sender=(val) prop_set('exclude-email-sender', val) end # exclude email recipient def exclude_email_recipient prop_get('exclude-email-recipient') end # exclude email recipient def exclude_email_recipient=(val) prop_set('exclude-email-recipient', val) end # exclude email subject def exclude_email_subject prop_get('exclude-email-subject') end # exclude email subject def exclude_email_subject=(val) prop_set('exclude-email-subject', val) end end # class SessionInfoSelect def session_info_select @subclasses['session-info-select'] ||= SessionInfoSelect.new(parent_instance: self, create_children: @create_children) end @props={"file-idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"90", "min"=>"5", "max"=>"180", "help-string"=>"set file caching idle timeout (second)"}, "file-upload-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"150", "platform-max"=>"cfg.general.fb.max-fbfiles-per-min", "help-string"=>"set max number of files uploaded per minute"}, "public-cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([$a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "default"=>"wildfire.paloaltonetworks.com", "loose-membership"=>"yes", "help-string"=> "IP address or hostname for cloud server. Default is wildfire.paloaltonetworks.com", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "private-cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([:/$a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or hostname for private cloud server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "private-cloud-use-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Use global proxy, when configured, to connect to private cloud server."}, "disable-signature-verify"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable file signature verification"}, "report-benign-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"collect reports from cloud for benign files"}, "report-grayware-file"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"collect reports from cloud for grayware files"}} # set file caching idle timeout (second) def file_idle_timeout prop_get('file-idle-timeout') end # set file caching idle timeout (second) def file_idle_timeout=(val) prop_set('file-idle-timeout', val) end # set max number of files uploaded per minute def file_upload_rate prop_get('file-upload-rate') end # set max number of files uploaded per minute def file_upload_rate=(val) prop_set('file-upload-rate', val) end # IP address or hostname for cloud server. Default is wildfire.paloaltonetworks.com def public_cloud_server prop_get('public-cloud-server') end # IP address or hostname for cloud server. Default is wildfire.paloaltonetworks.com def public_cloud_server=(val) prop_set('public-cloud-server', val) end # IP address or hostname for private cloud server def private_cloud_server prop_get('private-cloud-server') end # IP address or hostname for private cloud server def private_cloud_server=(val) prop_set('private-cloud-server', val) end # Use global proxy, when configured, to connect to private cloud server. def private_cloud_use_proxy prop_get('private-cloud-use-proxy') end # Use global proxy, when configured, to connect to private cloud server. def private_cloud_use_proxy=(val) prop_set('private-cloud-use-proxy', val) end # disable file signature verification def disable_signature_verify prop_get('disable-signature-verify') end # disable file signature verification def disable_signature_verify=(val) prop_set('disable-signature-verify', val) end # collect reports from cloud for benign files def report_benign_file prop_get('report-benign-file') end # collect reports from cloud for benign files def report_benign_file=(val) prop_set('report-benign-file', val) end # collect reports from cloud for grayware files def report_grayware_file prop_get('report-grayware-file') end # collect reports from cloud for grayware files def report_grayware_file=(val) prop_set('report-grayware-file', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Ctd < ConfigClass def has_multiple_values? false end def _section :'ctd' end @props={"x-forwarded-for"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"0", "help-string"=>"Select parsing mode for x-forwarded-for attribute", "enum"=> [{"value"=>"0", "help-string"=>"Disabled"}, {"value"=>"1", "help-string"=>"Enabled for User-ID"}, {"value"=>"2", "help-string"=>"Enabled for Security Policy"}]}, "strip-x-fwd-for"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to strip x-forwarded-for in http header"}, "url-coach-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"1", "max"=>"86400", "help-string"=>"set url coach continue timeout(minutes)"}, "url-admin-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"1", "max"=>"86400", "help-string"=>"set url admin continue timeout(minutes)"}, "url-lockout-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"86400", "help-string"=>"set url admin override lockout timeout(minutes)"}, "url-wait-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"1", "max"=>"60", "help-string"=>"set url category query timeout(seconds)"}, "cap-portal-ask-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"0", "max"=>"65535", "help-string"=>"set captive portal rate limit timeout(seconds)"}, "cap-portal-ask-requests"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"32", "help-string"=>"set captive portal rate limit max request count"}, "cap-portal-max-session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2500", "min"=>"0", "max"=>"8192", "help-string"=>"set maximum captive portal sessions"}, "cap-portal-html-redirect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to redirect with html meta header"}, "http-proxy-use-transaction"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to use transaction for stats for http proxy sessions"}, "tcp-bypass-exceed-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to skip inspection of TCP session if queue limit is exceeded"}, "udp-bypass-exceed-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to skip inspection of UDP session if queue limit is exceeded"}, "allow-http-range"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to allow HTTP partial response"}, "extended-capture-segment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"50", "help-string"=>"number of segment of threat packet capture."}, "track-filename"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"keep on tracking filenames without considering profile"}, "hash-signature-allow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to do hashing for virus signatures"}, "decode-filter-max-depth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"4", "min"=>"1", "max"=>"4", "help-string"=>"set number of levels for decode filter"}, "hold-client-request"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to hold client request for URL category lookup"}, "header-insert-cleartext-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use cleartext proxy for HTTP header insertion"}, "block-on-cleartext-proxy-failure"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Block session when cleartext proxy fails to start"}, "cloud-dns-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"100", "min"=>"0", "max"=>"60000", "help-string"=>"set cloud DNS signature query timeout in milliseconds"}, "cloud-dns-privacy-mask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set cloud DNS telemetry mask source ip address"}, "siptcp-cleartext-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"1", "help-string"=>"Select Cleartext proxy mode for SIP TCP", "enum"=> [{"value"=>"0", "help-string"=>"Always Off"}, {"value"=>"1", "help-string"=>"Always enabled"}, {"value"=>"2", "help-string"=>"Automatically enable proxy when needed"}]}, "http2-cleartext-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to enable/disable cleartext proxy for HTTP/2"}} # Select parsing mode for x-forwarded-for attribute def x_forwarded_for prop_get('x-forwarded-for') end # Select parsing mode for x-forwarded-for attribute def x_forwarded_for=(val) prop_set('x-forwarded-for', val) end # whether to strip x-forwarded-for in http header def strip_x_fwd_for prop_get('strip-x-fwd-for') end # whether to strip x-forwarded-for in http header def strip_x_fwd_for=(val) prop_set('strip-x-fwd-for', val) end # set url coach continue timeout(minutes) def url_coach_timeout prop_get('url-coach-timeout') end # set url coach continue timeout(minutes) def url_coach_timeout=(val) prop_set('url-coach-timeout', val) end # set url admin continue timeout(minutes) def url_admin_timeout prop_get('url-admin-timeout') end # set url admin continue timeout(minutes) def url_admin_timeout=(val) prop_set('url-admin-timeout', val) end # set url admin override lockout timeout(minutes) def url_lockout_timeout prop_get('url-lockout-timeout') end # set url admin override lockout timeout(minutes) def url_lockout_timeout=(val) prop_set('url-lockout-timeout', val) end # set url category query timeout(seconds) def url_wait_timeout prop_get('url-wait-timeout') end # set url category query timeout(seconds) def url_wait_timeout=(val) prop_set('url-wait-timeout', val) end # set captive portal rate limit timeout(seconds) def cap_portal_ask_timeout prop_get('cap-portal-ask-timeout') end # set captive portal rate limit timeout(seconds) def cap_portal_ask_timeout=(val) prop_set('cap-portal-ask-timeout', val) end # set captive portal rate limit max request count def cap_portal_ask_requests prop_get('cap-portal-ask-requests') end # set captive portal rate limit max request count def cap_portal_ask_requests=(val) prop_set('cap-portal-ask-requests', val) end # set maximum captive portal sessions def cap_portal_max_session prop_get('cap-portal-max-session') end # set maximum captive portal sessions def cap_portal_max_session=(val) prop_set('cap-portal-max-session', val) end # whether to redirect with html meta header def cap_portal_html_redirect prop_get('cap-portal-html-redirect') end # whether to redirect with html meta header def cap_portal_html_redirect=(val) prop_set('cap-portal-html-redirect', val) end # whether to use transaction for stats for http proxy sessions def http_proxy_use_transaction prop_get('http-proxy-use-transaction') end # whether to use transaction for stats for http proxy sessions def http_proxy_use_transaction=(val) prop_set('http-proxy-use-transaction', val) end # whether to skip inspection of TCP session if queue limit is exceeded def tcp_bypass_exceed_queue prop_get('tcp-bypass-exceed-queue') end # whether to skip inspection of TCP session if queue limit is exceeded def tcp_bypass_exceed_queue=(val) prop_set('tcp-bypass-exceed-queue', val) end # whether to skip inspection of UDP session if queue limit is exceeded def udp_bypass_exceed_queue prop_get('udp-bypass-exceed-queue') end # whether to skip inspection of UDP session if queue limit is exceeded def udp_bypass_exceed_queue=(val) prop_set('udp-bypass-exceed-queue', val) end # whether to allow HTTP partial response def allow_http_range prop_get('allow-http-range') end # whether to allow HTTP partial response def allow_http_range=(val) prop_set('allow-http-range', val) end # number of segment of threat packet capture. def extended_capture_segment prop_get('extended-capture-segment') end # number of segment of threat packet capture. def extended_capture_segment=(val) prop_set('extended-capture-segment', val) end # keep on tracking filenames without considering profile def track_filename prop_get('track-filename') end # keep on tracking filenames without considering profile def track_filename=(val) prop_set('track-filename', val) end # whether to do hashing for virus signatures def hash_signature_allow prop_get('hash-signature-allow') end # whether to do hashing for virus signatures def hash_signature_allow=(val) prop_set('hash-signature-allow', val) end # set number of levels for decode filter def decode_filter_max_depth prop_get('decode-filter-max-depth') end # set number of levels for decode filter def decode_filter_max_depth=(val) prop_set('decode-filter-max-depth', val) end # whether to hold client request for URL category lookup def hold_client_request prop_get('hold-client-request') end # whether to hold client request for URL category lookup def hold_client_request=(val) prop_set('hold-client-request', val) end # Use cleartext proxy for HTTP header insertion def header_insert_cleartext_proxy prop_get('header-insert-cleartext-proxy') end # Use cleartext proxy for HTTP header insertion def header_insert_cleartext_proxy=(val) prop_set('header-insert-cleartext-proxy', val) end # Block session when cleartext proxy fails to start def block_on_cleartext_proxy_failure prop_get('block-on-cleartext-proxy-failure') end # Block session when cleartext proxy fails to start def block_on_cleartext_proxy_failure=(val) prop_set('block-on-cleartext-proxy-failure', val) end # set cloud DNS signature query timeout in milliseconds def cloud_dns_timeout prop_get('cloud-dns-timeout') end # set cloud DNS signature query timeout in milliseconds def cloud_dns_timeout=(val) prop_set('cloud-dns-timeout', val) end # set cloud DNS telemetry mask source ip address def cloud_dns_privacy_mask prop_get('cloud-dns-privacy-mask') end # set cloud DNS telemetry mask source ip address def cloud_dns_privacy_mask=(val) prop_set('cloud-dns-privacy-mask', val) end # Select Cleartext proxy mode for SIP TCP def siptcp_cleartext_proxy prop_get('siptcp-cleartext-proxy') end # Select Cleartext proxy mode for SIP TCP def siptcp_cleartext_proxy=(val) prop_set('siptcp-cleartext-proxy', val) end # whether to enable/disable cleartext proxy for HTTP/2 def http2_cleartext_proxy prop_get('http2-cleartext-proxy') end # whether to enable/disable cleartext proxy for HTTP/2 def http2_cleartext_proxy=(val) prop_set('http2-cleartext-proxy', val) end end # class Ctd def ctd @subclasses['ctd'] ||= Ctd.new(parent_instance: self, create_children: @create_children) end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end @props={"url-wait"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set if wait for url category if not in cache"}, "url-proxy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "set if proxy for ssl sessions if ip's url category is blocked"}, "notify-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set if user notification should be enabled"}, "answer-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"86400", "min"=>"1", "max"=>"86400", "help-string"=>"set user reply timeout value in seconds"}, "crl"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set whether to use CRL to check certificate status"}, "ocsp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"set whether to use OCSP to check certificate status"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "session-cache-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"86400", "default"=>"3600", "help-string"=>"set session cache timeout value in seconds"}, "tcp-use-ts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"set whether to use TCP timestamps"}, "fwd-proxy-server-cert-key-size-rsa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"0", "help-string"=>"select the rsa public key size for forward proxy", "enum"=> [{"value"=>"0", "help-string"=>"Defined by destination host"}, {"value"=>"1024", "help-string"=>"1024-bit RSA"}, {"value"=>"2048", "help-string"=>"2048-bit RSA"}, {"value"=>"3072", "help-string"=>"3072-bit RSA"}, {"value"=>"4096", "help-string"=>"4096-bit RSA"}]}, "fwd-proxy-server-cert-key-size-ecdsa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"0", "help-string"=>"select the ecdsa public key size for forward proxy", "enum"=> [{"value"=>"0", "help-string"=>"Defined by destination host"}, {"value"=>"256", "help-string"=>"256-bit ECDSA"}, {"value"=>"384", "help-string"=>"384-bit ECDSA"}]}, "default-elliptic-curve"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"256", "help-string"=>"default ECC curve for key exchange", "enum"=> [{"value"=>"192", "help-string"=>"secp192r1, aka prime192v1"}, {"value"=>"224", "help-string"=>"secp224r1"}, {"value"=>"256", "help-string"=>"secp256r1, aka prime256v1"}, {"value"=>"384", "help-string"=>"secp384r1"}, {"value"=>"521", "help-string"=>"secp521r1"}]}, "fptcp-rwin-max"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"524288", "max"=>"8388608", "default"=>"524288", "help-string"=> "Maximum TCP receive window for proxy TCP sessions in bytes"}} # set if wait for url category if not in cache def url_wait prop_get('url-wait') end # set if wait for url category if not in cache def url_wait=(val) prop_set('url-wait', val) end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy prop_get('url-proxy') end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy=(val) prop_set('url-proxy', val) end # set if user notification should be enabled def notify_user prop_get('notify-user') end # set if user notification should be enabled def notify_user=(val) prop_set('notify-user', val) end # set user reply timeout value in seconds def answer_timeout prop_get('answer-timeout') end # set user reply timeout value in seconds def answer_timeout=(val) prop_set('answer-timeout', val) end # set whether to use CRL to check certificate status def crl prop_get('crl') end # set whether to use CRL to check certificate status def crl=(val) prop_set('crl', val) end # set whether to use OCSP to check certificate status def ocsp prop_get('ocsp') end # set whether to use OCSP to check certificate status def ocsp=(val) prop_set('ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # set session cache timeout value in seconds def session_cache_timeout prop_get('session-cache-timeout') end # set session cache timeout value in seconds def session_cache_timeout=(val) prop_set('session-cache-timeout', val) end # set whether to use TCP timestamps def tcp_use_ts prop_get('tcp-use-ts') end # set whether to use TCP timestamps def tcp_use_ts=(val) prop_set('tcp-use-ts', val) end # select the rsa public key size for forward proxy def fwd_proxy_server_cert_key_size_rsa prop_get('fwd-proxy-server-cert-key-size-rsa') end # select the rsa public key size for forward proxy def fwd_proxy_server_cert_key_size_rsa=(val) prop_set('fwd-proxy-server-cert-key-size-rsa', val) end # select the ecdsa public key size for forward proxy def fwd_proxy_server_cert_key_size_ecdsa prop_get('fwd-proxy-server-cert-key-size-ecdsa') end # select the ecdsa public key size for forward proxy def fwd_proxy_server_cert_key_size_ecdsa=(val) prop_set('fwd-proxy-server-cert-key-size-ecdsa', val) end # default ECC curve for key exchange def default_elliptic_curve prop_get('default-elliptic-curve') end # default ECC curve for key exchange def default_elliptic_curve=(val) prop_set('default-elliptic-curve', val) end # Maximum TCP receive window for proxy TCP sessions in bytes def fptcp_rwin_max prop_get('fptcp-rwin-max') end # Maximum TCP receive window for proxy TCP sessions in bytes def fptcp_rwin_max=(val) prop_set('fptcp-rwin-max', val) end end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end class Session < ConfigClass def has_multiple_values? false end def _section :'session' end @props={"timeout-tcp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"3600", "min"=>"1", "max"=>"15999999", "help-string"=>"set tcp timeout value in seconds"}, "timeout-udp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"15999999", "help-string"=>"set udp timeout value in seconds"}, "timeout-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"6", "min"=>"1", "max"=>"15999999", "help-string"=>"set icmp timeout value in seconds"}, "timeout-default"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"15999999", "help-string"=>"set session default timeout value in seconds"}, "timeout-tcpinit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"60", "help-string"=> "set tcp initial session timeout (before SYN-ACK is received) value in seconds"}, "timeout-tcphandshake"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"10", "min"=>"1", "max"=>"60", "help-string"=> "set tcp handshake session timeout (before 3-way handshaking is completed) value in seconds"}, "timeout-tcp-half-closed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"120", "min"=>"1", "max"=>"604800", "help-string"=> "set session tcp half close timeout (after receiving first FIN/RST) value in seconds"}, "timeout-tcp-time-wait"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"1", "max"=>"600", "help-string"=> "set session tcp time wait timeout (after receiving second FIN/RST) value in seconds"}, "timeout-tcp-unverified-rst"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"600", "help-string"=> "set session tcp timeout value after receiving a RST with unverified sequence number in seconds"}, "timeout-captive-portal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"15999999", "help-string"=>"set captive-portal session timeout value in seconds"}, "timeout-discard-tcp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"15999999", "default"=>"90", "help-string"=>"set timeout of tcp session in discard state"}, "timeout-discard-udp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"15999999", "default"=>"60", "help-string"=>"set timeout of udp session in discard state"}, "timeout-discard-default"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"15999999", "default"=>"60", "help-string"=>"set timeout of non-tcp/udp session in discard state"}, "icmp-unreachable-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"200", "help-string"=> "set maximum number of ICMP unreachable messages sent per second"}, "timeout-scan"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5", "max"=>"30", "default"=>"10", "help-string"=>"application trickling timeout value in seconds"}, "scan-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"50", "max"=>"99", "default"=>"80", "help-string"=>"resource utilization threshold to trigger session scan"}, "scan-scaling-factor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"8", "min"=>"2", "max"=>"16", "help-string"=>"set scan scaling factor"}, "accelerated-aging-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable accelerated session aging"}, "accelerated-aging-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"80", "min"=>"50", "max"=>"99", "help-string"=> "set accelerated aging threshold in percentage of session utilization"}, "accelerated-aging-scaling-factor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2", "min"=>"2", "max"=>"16", "help-string"=>"set accelerated session aging scaling factor (power of 2)"}, "packet-buffer-protection-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable packet buffer protection"}, "packet-buffer-protection-monitor-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable packet buffer protection monitor only mode"}, "packet-buffer-protection-alert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"50", "min"=>"0", "max"=>"99", "help-string"=>"percentage of packet buffer utilization"}, "packet-buffer-protection-activate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"80", "min"=>"0", "max"=>"99", "help-string"=>"percentage of packet buffer utilization"}, "packet-buffer-protection-block-countdown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"80", "min"=>"0", "max"=>"99", "help-string"=>"percentage above which the block timer is counting down"}, "packet-buffer-protection-block-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"0", "max"=>"65535", "help-string"=> "time the session continues to be abusive to packet buffers"}, "packet-buffer-protection-block-duration-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"3600", "min"=>"1", "max"=>"15999999", "help-string"=> "time the session is blocked after being abusive to packet buffers"}, "packet-buffer-protection-use-latency"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "use buffering latency to make packet buffer protection decision"}, "packet-buffer-protection-latency-alert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"50", "min"=>"1", "max"=>"20000", "help-string"=> "buffering latency that triggers pbp alert (in milliseconds)"}, "packet-buffer-protection-latency-activate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"200", "min"=>"1", "max"=>"20000", "help-string"=> "buffering latency that triggers Random Early Drop (RED) (in milliseconds)"}, "packet-buffer-protection-latency-block-countdown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"1", "max"=>"20000", "help-string"=>"buffering latency that triggers block countdown timer"}, "packet-buffer-protection-latency-max-tolerate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"1", "max"=>"20000", "help-string"=> "buffering latency that triggers 100% packet drop for abusive traffic"}, "tcp-reject-non-syn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"reject non-SYN TCP packet for session setup"}, "tcp-retransmit-scan"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable tcp retransmit scan "}, "offload"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable hardware session offloading"}, "ipv6-firewalling"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable IPv6 firewalling"}, "express-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable express-mode", "prune-on-sdb"=> "cfg.platform.model=PA-VM,cfg.platform.model=PA-500,cfg.platform.model=PA-5050,cfg.platform.model=PA-5020,cfg.platform.model=PA-5060,cfg.platform.model=PA-200,cfg.platform.model=PA-3050,cfg.platform.model=PA-3020,cfg.platform.model=PA-7050,cfg.platform.model=PA-7080,cfg.platform.model=PA-820,cfg.platform.model=PA-850,cfg.platform.model=PA-220,cfg.platform.model=PA-5220,cfg.platform.model=PA-5250,cfg.platform.model=PA-5260,cfg.platform.model=PA-3220,cfg.platform.model=PA-3260,cfg.platform.model=PA-200R,cfg.platform.model=PA-3220-ZTP,cfg.platform.model=PA-3250-ZTP,cfg.platform.model=PA-3260-ZTP,cfg.platform.model=PA-820-ZTP,cfg.platform.model=PA-850-ZTP,cfg.platform.model=PA-220-ZTP,cfg.platform.model=PA-220R-ZTP"}, "resource-limit-behavior"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"drop", "help-string"=>"behavior when resource limit is reached", "enum"=>[{"value"=>"bypass"}, {"value"=>"drop"}]}, "multicast-route-setup-buffering"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "enable/disable multicast packet queue for pending multicast route"}, "max-pending-mcast-pkts-per-session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "default"=>"1000", "help-string"=>"Max number of multicast packets queued per session"}, "timeout-sctp-init"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"5", "min"=>"1", "max"=>"120", "help-string"=>"set sctp init timeout value in seconds"}, "timeout-sctp-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"1", "max"=>"120", "help-string"=>"set sctp init cookie timeout value in seconds"}, "timeout-discard-sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"30", "min"=>"1", "max"=>"600", "help-string"=>"set sctp discard timeout value in seconds"}, "timeout-sctp-shutdown"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"1", "max"=>"600", "help-string"=>"set sctp shutdown timeout value in seconds"}, "timeout-sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"3600", "min"=>"1", "max"=>"86400", "help-string"=>"set sctp timeout value in seconds"}, "timeout-5gc-delete"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"15", "min"=>"15", "max"=>"1800", "help-string"=>"set 5gc delete timeout value in seconds"}, "dhcp-bcast-session-on"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "enable/disable session setup for ingress DHCP broadcast packets at DHCP interfaces."}} # set tcp timeout value in seconds def timeout_tcp prop_get('timeout-tcp') end # set tcp timeout value in seconds def timeout_tcp=(val) prop_set('timeout-tcp', val) end # set udp timeout value in seconds def timeout_udp prop_get('timeout-udp') end # set udp timeout value in seconds def timeout_udp=(val) prop_set('timeout-udp', val) end # set icmp timeout value in seconds def timeout_icmp prop_get('timeout-icmp') end # set icmp timeout value in seconds def timeout_icmp=(val) prop_set('timeout-icmp', val) end # set session default timeout value in seconds def timeout_default prop_get('timeout-default') end # set session default timeout value in seconds def timeout_default=(val) prop_set('timeout-default', val) end # set tcp initial session timeout (before SYN-ACK is received) value in seconds def timeout_tcpinit prop_get('timeout-tcpinit') end # set tcp initial session timeout (before SYN-ACK is received) value in seconds def timeout_tcpinit=(val) prop_set('timeout-tcpinit', val) end # set tcp handshake session timeout (before 3-way handshaking is completed) value in seconds def timeout_tcphandshake prop_get('timeout-tcphandshake') end # set tcp handshake session timeout (before 3-way handshaking is completed) value in seconds def timeout_tcphandshake=(val) prop_set('timeout-tcphandshake', val) end # set session tcp half close timeout (after receiving first FIN/RST) value in seconds def timeout_tcp_half_closed prop_get('timeout-tcp-half-closed') end # set session tcp half close timeout (after receiving first FIN/RST) value in seconds def timeout_tcp_half_closed=(val) prop_set('timeout-tcp-half-closed', val) end # set session tcp time wait timeout (after receiving second FIN/RST) value in seconds def timeout_tcp_time_wait prop_get('timeout-tcp-time-wait') end # set session tcp time wait timeout (after receiving second FIN/RST) value in seconds def timeout_tcp_time_wait=(val) prop_set('timeout-tcp-time-wait', val) end # set session tcp timeout value after receiving a RST with unverified sequence number in seconds def timeout_tcp_unverified_rst prop_get('timeout-tcp-unverified-rst') end # set session tcp timeout value after receiving a RST with unverified sequence number in seconds def timeout_tcp_unverified_rst=(val) prop_set('timeout-tcp-unverified-rst', val) end # set captive-portal session timeout value in seconds def timeout_captive_portal prop_get('timeout-captive-portal') end # set captive-portal session timeout value in seconds def timeout_captive_portal=(val) prop_set('timeout-captive-portal', val) end # set timeout of tcp session in discard state def timeout_discard_tcp prop_get('timeout-discard-tcp') end # set timeout of tcp session in discard state def timeout_discard_tcp=(val) prop_set('timeout-discard-tcp', val) end # set timeout of udp session in discard state def timeout_discard_udp prop_get('timeout-discard-udp') end # set timeout of udp session in discard state def timeout_discard_udp=(val) prop_set('timeout-discard-udp', val) end # set timeout of non-tcp/udp session in discard state def timeout_discard_default prop_get('timeout-discard-default') end # set timeout of non-tcp/udp session in discard state def timeout_discard_default=(val) prop_set('timeout-discard-default', val) end # set maximum number of ICMP unreachable messages sent per second def icmp_unreachable_rate prop_get('icmp-unreachable-rate') end # set maximum number of ICMP unreachable messages sent per second def icmp_unreachable_rate=(val) prop_set('icmp-unreachable-rate', val) end # application trickling timeout value in seconds def timeout_scan prop_get('timeout-scan') end # application trickling timeout value in seconds def timeout_scan=(val) prop_set('timeout-scan', val) end # resource utilization threshold to trigger session scan def scan_threshold prop_get('scan-threshold') end # resource utilization threshold to trigger session scan def scan_threshold=(val) prop_set('scan-threshold', val) end # set scan scaling factor def scan_scaling_factor prop_get('scan-scaling-factor') end # set scan scaling factor def scan_scaling_factor=(val) prop_set('scan-scaling-factor', val) end # enable/disable accelerated session aging def accelerated_aging_enable prop_get('accelerated-aging-enable') end # enable/disable accelerated session aging def accelerated_aging_enable=(val) prop_set('accelerated-aging-enable', val) end # set accelerated aging threshold in percentage of session utilization def accelerated_aging_threshold prop_get('accelerated-aging-threshold') end # set accelerated aging threshold in percentage of session utilization def accelerated_aging_threshold=(val) prop_set('accelerated-aging-threshold', val) end # set accelerated session aging scaling factor (power of 2) def accelerated_aging_scaling_factor prop_get('accelerated-aging-scaling-factor') end # set accelerated session aging scaling factor (power of 2) def accelerated_aging_scaling_factor=(val) prop_set('accelerated-aging-scaling-factor', val) end # enable/disable packet buffer protection def packet_buffer_protection_enable prop_get('packet-buffer-protection-enable') end # enable/disable packet buffer protection def packet_buffer_protection_enable=(val) prop_set('packet-buffer-protection-enable', val) end # enable/disable packet buffer protection monitor only mode def packet_buffer_protection_monitor_only prop_get('packet-buffer-protection-monitor-only') end # enable/disable packet buffer protection monitor only mode def packet_buffer_protection_monitor_only=(val) prop_set('packet-buffer-protection-monitor-only', val) end # percentage of packet buffer utilization def packet_buffer_protection_alert prop_get('packet-buffer-protection-alert') end # percentage of packet buffer utilization def packet_buffer_protection_alert=(val) prop_set('packet-buffer-protection-alert', val) end # percentage of packet buffer utilization def packet_buffer_protection_activate prop_get('packet-buffer-protection-activate') end # percentage of packet buffer utilization def packet_buffer_protection_activate=(val) prop_set('packet-buffer-protection-activate', val) end # percentage above which the block timer is counting down def packet_buffer_protection_block_countdown prop_get('packet-buffer-protection-block-countdown') end # percentage above which the block timer is counting down def packet_buffer_protection_block_countdown=(val) prop_set('packet-buffer-protection-block-countdown', val) end # time the session continues to be abusive to packet buffers def packet_buffer_protection_block_hold_time prop_get('packet-buffer-protection-block-hold-time') end # time the session continues to be abusive to packet buffers def packet_buffer_protection_block_hold_time=(val) prop_set('packet-buffer-protection-block-hold-time', val) end # time the session is blocked after being abusive to packet buffers def packet_buffer_protection_block_duration_time prop_get('packet-buffer-protection-block-duration-time') end # time the session is blocked after being abusive to packet buffers def packet_buffer_protection_block_duration_time=(val) prop_set('packet-buffer-protection-block-duration-time', val) end # use buffering latency to make packet buffer protection decision def packet_buffer_protection_use_latency prop_get('packet-buffer-protection-use-latency') end # use buffering latency to make packet buffer protection decision def packet_buffer_protection_use_latency=(val) prop_set('packet-buffer-protection-use-latency', val) end # buffering latency that triggers pbp alert (in milliseconds) def packet_buffer_protection_latency_alert prop_get('packet-buffer-protection-latency-alert') end # buffering latency that triggers pbp alert (in milliseconds) def packet_buffer_protection_latency_alert=(val) prop_set('packet-buffer-protection-latency-alert', val) end # buffering latency that triggers Random Early Drop (RED) (in milliseconds) def packet_buffer_protection_latency_activate prop_get('packet-buffer-protection-latency-activate') end # buffering latency that triggers Random Early Drop (RED) (in milliseconds) def packet_buffer_protection_latency_activate=(val) prop_set('packet-buffer-protection-latency-activate', val) end # buffering latency that triggers block countdown timer def packet_buffer_protection_latency_block_countdown prop_get('packet-buffer-protection-latency-block-countdown') end # buffering latency that triggers block countdown timer def packet_buffer_protection_latency_block_countdown=(val) prop_set('packet-buffer-protection-latency-block-countdown', val) end # buffering latency that triggers 100% packet drop for abusive traffic def packet_buffer_protection_latency_max_tolerate prop_get('packet-buffer-protection-latency-max-tolerate') end # buffering latency that triggers 100% packet drop for abusive traffic def packet_buffer_protection_latency_max_tolerate=(val) prop_set('packet-buffer-protection-latency-max-tolerate', val) end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn prop_get('tcp-reject-non-syn') end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn=(val) prop_set('tcp-reject-non-syn', val) end # enable/disable tcp retransmit scan def tcp_retransmit_scan prop_get('tcp-retransmit-scan') end # enable/disable tcp retransmit scan def tcp_retransmit_scan=(val) prop_set('tcp-retransmit-scan', val) end # enable/disable hardware session offloading def offload prop_get('offload') end # enable/disable hardware session offloading def offload=(val) prop_set('offload', val) end # enable/disable IPv6 firewalling def ipv6_firewalling prop_get('ipv6-firewalling') end # enable/disable IPv6 firewalling def ipv6_firewalling=(val) prop_set('ipv6-firewalling', val) end # enable/disable express-mode def express_mode prop_get('express-mode') end # enable/disable express-mode def express_mode=(val) prop_set('express-mode', val) end # behavior when resource limit is reached def resource_limit_behavior prop_get('resource-limit-behavior') end # behavior when resource limit is reached def resource_limit_behavior=(val) prop_set('resource-limit-behavior', val) end # enable/disable multicast packet queue for pending multicast route def multicast_route_setup_buffering prop_get('multicast-route-setup-buffering') end # enable/disable multicast packet queue for pending multicast route def multicast_route_setup_buffering=(val) prop_set('multicast-route-setup-buffering', val) end # Max number of multicast packets queued per session def max_pending_mcast_pkts_per_session prop_get('max-pending-mcast-pkts-per-session') end # Max number of multicast packets queued per session def max_pending_mcast_pkts_per_session=(val) prop_set('max-pending-mcast-pkts-per-session', val) end # set sctp init timeout value in seconds def timeout_sctp_init prop_get('timeout-sctp-init') end # set sctp init timeout value in seconds def timeout_sctp_init=(val) prop_set('timeout-sctp-init', val) end # set sctp init cookie timeout value in seconds def timeout_sctp_cookie prop_get('timeout-sctp-cookie') end # set sctp init cookie timeout value in seconds def timeout_sctp_cookie=(val) prop_set('timeout-sctp-cookie', val) end # set sctp discard timeout value in seconds def timeout_discard_sctp prop_get('timeout-discard-sctp') end # set sctp discard timeout value in seconds def timeout_discard_sctp=(val) prop_set('timeout-discard-sctp', val) end # set sctp shutdown timeout value in seconds def timeout_sctp_shutdown prop_get('timeout-sctp-shutdown') end # set sctp shutdown timeout value in seconds def timeout_sctp_shutdown=(val) prop_set('timeout-sctp-shutdown', val) end # set sctp timeout value in seconds def timeout_sctp prop_get('timeout-sctp') end # set sctp timeout value in seconds def timeout_sctp=(val) prop_set('timeout-sctp', val) end # set 5gc delete timeout value in seconds def timeout_5gc_delete prop_get('timeout-5gc-delete') end # set 5gc delete timeout value in seconds def timeout_5gc_delete=(val) prop_set('timeout-5gc-delete', val) end # enable/disable session setup for ingress DHCP broadcast packets at DHCP interfaces. def dhcp_bcast_session_on prop_get('dhcp-bcast-session-on') end # enable/disable session setup for ingress DHCP broadcast packets at DHCP interfaces. def dhcp_bcast_session_on=(val) prop_set('dhcp-bcast-session-on', val) end end # class Session def session @subclasses['session'] ||= Session.new(parent_instance: self, create_children: @create_children) end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end @props={"bypass-exceed-oo-queue"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to skip inspection of session if out-of-order packets limit is exceeded"}, "allow-challenge-ack"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow arbitrary ACK in response to SYN"}, "check-timestamp-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to drop packets with invalid timestamp option"}, "asymmetric-path"=> {"node-type"=>"element", "type"=>"enum", "default"=>"drop", "optional"=>"yes", "help-string"=> "actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST", "enum"=> [{"value"=>"drop", "help-string"=> "drop offending packets that violated TCP sliding window tracking, enable TCP sequence number check for FIN/RST"}, {"value"=>"bypass", "help-string"=> "bypass inspection for the session that has TCP sliding window tracking errors"}]}, "urgent-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"clear", "help-string"=>"clear urgent flag in TCP header", "enum"=> [{"value"=>"clear", "help-string"=>"always clear urgent data pointers"}, {"value"=>"oobinline", "help-string"=>"assume host process OOB data inline with normal data"}]}, "drop-zero-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "whether to drop TCP packet if flag becomes zero after clear urgent flag"}, "strip-mptcp-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"whether to strip MPTCP option"}} # whether to skip inspection of session if out-of-order packets limit is exceeded def bypass_exceed_oo_queue prop_get('bypass-exceed-oo-queue') end # whether to skip inspection of session if out-of-order packets limit is exceeded def bypass_exceed_oo_queue=(val) prop_set('bypass-exceed-oo-queue', val) end # Allow arbitrary ACK in response to SYN def allow_challenge_ack prop_get('allow-challenge-ack') end # Allow arbitrary ACK in response to SYN def allow_challenge_ack=(val) prop_set('allow-challenge-ack', val) end # whether to drop packets with invalid timestamp option def check_timestamp_option prop_get('check-timestamp-option') end # whether to drop packets with invalid timestamp option def check_timestamp_option=(val) prop_set('check-timestamp-option', val) end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path prop_get('asymmetric-path') end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path=(val) prop_set('asymmetric-path', val) end # clear urgent flag in TCP header def urgent_data prop_get('urgent-data') end # clear urgent flag in TCP header def urgent_data=(val) prop_set('urgent-data', val) end # whether to drop TCP packet if flag becomes zero after clear urgent flag def drop_zero_flag prop_get('drop-zero-flag') end # whether to drop TCP packet if flag becomes zero after clear urgent flag def drop_zero_flag=(val) prop_set('drop-zero-flag', val) end # whether to strip MPTCP option def strip_mptcp_option prop_get('strip-mptcp-option') end # whether to strip MPTCP option def strip_mptcp_option=(val) prop_set('strip-mptcp-option', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Zip < ConfigClass def has_multiple_values? false end def _section :'zip' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable zip engine"}, "mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto", "help-string"=>"whether to use hardware or software zip engine, or both", "enum"=> [{"value"=>"hw", "help-string"=>"hardware zip engine"}, {"value"=>"sw", "help-string"=>"software zip engine"}, {"value"=>"auto", "help-string"=>"automatically switch between hw and sw zip engines"}]}} # enable/disable zip engine def enable prop_get('enable') end # enable/disable zip engine def enable=(val) prop_set('enable', val) end # whether to use hardware or software zip engine, or both def mode prop_get('mode') end # whether to use hardware or software zip engine, or both def mode=(val) prop_set('mode', val) end end # class Zip def zip @subclasses['zip'] ||= Zip.new(parent_instance: self, create_children: @create_children) end class Http2 < ConfigClass def has_multiple_values? false end def _section :'http2' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable http/2 inspection"}, "stream-closed-buffer-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"10", "min"=>"1", "max"=>"100", "help-string"=>"set closed stream session ring buffer threshold"}, "server-push"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable http/2 server push support"}, "connection-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable http/2 connection logging"}} # enable/disable http/2 inspection def enable prop_get('enable') end # enable/disable http/2 inspection def enable=(val) prop_set('enable', val) end # set closed stream session ring buffer threshold def stream_closed_buffer_threshold prop_get('stream-closed-buffer-threshold') end # set closed stream session ring buffer threshold def stream_closed_buffer_threshold=(val) prop_set('stream-closed-buffer-threshold', val) end # enable/disable http/2 server push support def server_push prop_get('server-push') end # enable/disable http/2 server push support def server_push=(val) prop_set('server-push', val) end # enable/disable http/2 connection logging def connection_logging prop_get('connection-logging') end # enable/disable http/2 connection logging def connection_logging=(val) prop_set('connection-logging', val) end end # class Http2 def http2 @subclasses['http2'] ||= Http2.new(parent_instance: self, create_children: @create_children) end class Pow < ConfigClass def has_multiple_values? false end def _section :'pow' end @props={"wqe-tag-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe sess id tag check"}, "wqe-inuse-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe in use check "}, "wqe-swbuf-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe swbuf trailer check "}, "wqe-swbuf-track"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable wqe swbuf stack trace"}, "wqe-hexspeak"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe hexspeak "}, "wqe-swbuf-ref"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable wqe swbuf ref in clone"}} # enable/disable wqe sess id tag check def wqe_tag_check prop_get('wqe-tag-check') end # enable/disable wqe sess id tag check def wqe_tag_check=(val) prop_set('wqe-tag-check', val) end # enable/disable wqe in use check def wqe_inuse_check prop_get('wqe-inuse-check') end # enable/disable wqe in use check def wqe_inuse_check=(val) prop_set('wqe-inuse-check', val) end # enable/disable wqe swbuf trailer check def wqe_swbuf_check prop_get('wqe-swbuf-check') end # enable/disable wqe swbuf trailer check def wqe_swbuf_check=(val) prop_set('wqe-swbuf-check', val) end # enable/disable wqe swbuf stack trace def wqe_swbuf_track prop_get('wqe-swbuf-track') end # enable/disable wqe swbuf stack trace def wqe_swbuf_track=(val) prop_set('wqe-swbuf-track', val) end # enable/disable wqe hexspeak def wqe_hexspeak prop_get('wqe-hexspeak') end # enable/disable wqe hexspeak def wqe_hexspeak=(val) prop_set('wqe-hexspeak', val) end # enable/disable wqe swbuf ref in clone def wqe_swbuf_ref prop_get('wqe-swbuf-ref') end # enable/disable wqe swbuf ref in clone def wqe_swbuf_ref=(val) prop_set('wqe-swbuf-ref', val) end end # class Pow def pow @subclasses['pow'] ||= Pow.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end @props={"rematch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"rematch all sessions with new config policy"}} # rematch all sessions with new config policy def rematch prop_get('rematch') end # rematch all sessions with new config policy def rematch=(val) prop_set('rematch', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class Logging < ConfigClass def has_multiple_values? false end def _section :'logging' end class EnhancedApplicationLogging < ConfigClass def has_multiple_values? false end def _section :'enhanced-application-logging' end class DisableApplication < XML::ConfigClass def has_multiple_values? true end def _section :'disable-application' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name", "##/predefined/application/entry/@name|#config/shared/content-preview/application/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DisableApplication def disable_application if @create_children @subclasses['disable-application'] ||= DisableApplication.new(parent_instance: self, create_children: @create_children) else DisableApplication.new(parent_instance: self) end end class DisableGlobal < ConfigClass def has_multiple_values? false end def _section :'disable-global' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class Arp < ConfigClass def has_multiple_values? false end def _section :'arp' end @props={} end # class Arp def arp @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) end class NonSynTcp < ConfigClass def has_multiple_values? false end def _section :'non-syn-tcp' end @props={} end # class NonSynTcp def non_syn_tcp @subclasses['non-syn-tcp'] ||= NonSynTcp.new(parent_instance: self, create_children: @create_children) end class ExtTraffic < ConfigClass def has_multiple_values? false end def _section :'ext-traffic' end @props={} end # class ExtTraffic def ext_traffic @subclasses['ext-traffic'] ||= ExtTraffic.new(parent_instance: self, create_children: @create_children) end class HipReport < ConfigClass def has_multiple_values? false end def _section :'hip-report' end @props={} end # class HipReport def hip_report @subclasses['hip-report'] ||= HipReport.new(parent_instance: self, create_children: @create_children) end class DpChannel < ConfigClass def has_multiple_values? false end def _section :'dp-channel' end @props={} end # class DpChannel def dp_channel @subclasses['dp-channel'] ||= DpChannel.new(parent_instance: self, create_children: @create_children) end @props={} end # class DisableGlobal def disable_global @subclasses['disable-global'] ||= DisableGlobal.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable enhanced-application-logging"}} # enable/disable enhanced-application-logging def enable prop_get('enable') end # enable/disable enhanced-application-logging def enable=(val) prop_set('enable', val) end end # class EnhancedApplicationLogging def enhanced_application_logging @subclasses['enhanced-application-logging'] ||= EnhancedApplicationLogging.new(parent_instance: self, create_children: @create_children) end class LoggingServiceForwarding < ConfigClass def has_multiple_values? false end def _section :'logging-service-forwarding' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "enable-duplicate-logging"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "logging-service-regions"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Logging Service log-forwarding region selection", "complete-handler"=>"lcaas-region-complete-handler", "autocomplete"=>"yes"}, "ls-connection-count"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"20", "default"=>"5", "help-string"=>"Connection count to logging service"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def enable_duplicate_logging prop_get('enable-duplicate-logging') end def enable_duplicate_logging=(val) prop_set('enable-duplicate-logging', val) end # Logging Service log-forwarding region selection def logging_service_regions prop_get('logging-service-regions') end # Logging Service log-forwarding region selection def logging_service_regions=(val) prop_set('logging-service-regions', val) end # Connection count to logging service def ls_connection_count prop_get('ls-connection-count') end # Connection count to logging service def ls_connection_count=(val) prop_set('ls-connection-count', val) end end # class LoggingServiceForwarding def logging_service_forwarding @subclasses['logging-service-forwarding'] ||= LoggingServiceForwarding.new(parent_instance: self, create_children: @create_children) end @props={"max-log-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"50000", "min"=>"0", "max"=>"50000", "help-string"=>"set max. logging rate"}, "max-packet-rate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2560", "min"=>"0", "max"=>"2560", "help-string"=>"set max. packet logging rate"}, "log-suppression"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"yes", "help-string"=>"enable/disable log suppression", "enum"=>[{"value"=>"yes"}, {"value"=>"no"}]}} # set max. logging rate def max_log_rate prop_get('max-log-rate') end # set max. logging rate def max_log_rate=(val) prop_set('max-log-rate', val) end # set max. packet logging rate def max_packet_rate prop_get('max-packet-rate') end # set max. packet logging rate def max_packet_rate=(val) prop_set('max-packet-rate', val) end # enable/disable log suppression def log_suppression prop_get('log-suppression') end # enable/disable log suppression def log_suppression=(val) prop_set('log-suppression', val) end end # class Logging def logging @subclasses['logging'] ||= Logging.new(parent_instance: self, create_children: @create_children) end class Management < ConfigClass def has_multiple_values? false end def _section :'management' end class SecureConnClient < ConfigClass def has_multiple_values? false end def _section :'secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in management connections to Panorama and Log collectors", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}} # Custom certificate used in management connections to Panorama and Log collectors def certificate prop_get('certificate') end # Custom certificate used in management connections to Panorama and Log collectors def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=>["#config/shared/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={"check-server-identity"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no'"}, "enable-secure-wildfire-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for Wildfire connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-pandb-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for pandb connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-panorama-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for panorama connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-lc-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for log collector connections. Default setting : 'no'", "optional"=>"yes"}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}} # Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no' def check_server_identity prop_get('check-server-identity') end # Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no' def check_server_identity=(val) prop_set('check-server-identity', val) end # Use the secure-client certificate settings for Wildfire connections. Default setting : 'no' def enable_secure_wildfire_communication prop_get('enable-secure-wildfire-communication') end # Use the secure-client certificate settings for Wildfire connections. Default setting : 'no' def enable_secure_wildfire_communication=(val) prop_set('enable-secure-wildfire-communication', val) end # Use the secure-client certificate settings for pandb connections. Default setting : 'no' def enable_secure_pandb_communication prop_get('enable-secure-pandb-communication') end # Use the secure-client certificate settings for pandb connections. Default setting : 'no' def enable_secure_pandb_communication=(val) prop_set('enable-secure-pandb-communication', val) end # Use the secure-client certificate settings for panorama connections. Default setting : 'no' def enable_secure_panorama_communication prop_get('enable-secure-panorama-communication') end # Use the secure-client certificate settings for panorama connections. Default setting : 'no' def enable_secure_panorama_communication=(val) prop_set('enable-secure-panorama-communication', val) end # Use the secure-client certificate settings for log collector connections. Default setting : 'no' def enable_secure_lc_communication prop_get('enable-secure-lc-communication') end # Use the secure-client certificate settings for log collector connections. Default setting : 'no' def enable_secure_lc_communication=(val) prop_set('enable-secure-lc-communication', val) end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end end # class SecureConnClient def secure_conn_client @subclasses['secure-conn-client'] ||= SecureConnClient.new(parent_instance: self, create_children: @create_children) end class SecureConnServer < ConfigClass def has_multiple_values? false end def _section :'secure-conn-server' end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["#config/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure server settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Use the secure server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end end # class SecureConnServer def secure_conn_server @subclasses['secure-conn-server'] ||= SecureConnServer.new(parent_instance: self, create_children: @create_children) end class QuotaSettings < ConfigClass def has_multiple_values? false end def _section :'quota-settings' end class ChassisQuota < ConfigClass def has_multiple_values? false end def _section :'chassis-quota' end class LogCard < ConfigClass def has_multiple_values? false end def _section :'log-card' end @props={"traffic"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic logs quota percentage"}, "threat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat logs quota percentage"}, "trsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic summary quota percentage"}, "thsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat summary quota percentage"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"url summary quota percentage"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly traffic summary quota percentage"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily traffic summary quota percentage"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly traffic summary quota percentage"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly threat summary quota percentage"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily threat summary quota percentage"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly threat summary quota percentage"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly url summary quota percentage"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily url summary quota percentage"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly url summary quota percentage"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat packet capture quota percentage"}, "hipmatch"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hip match quota percentage"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"User ID logs quota percentage"}, "iptag"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"IP-Tag logs quota percentage"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Authentication logs quota percentage"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP logs quota percentage"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP summary quota percentage"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly Tunnel and GTP summary quota percentage"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily Tunnel and GTP summary quota percentage"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly Tunnel and GTP summary quota percentage"}, "decryption"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption logs quota percentage"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption summary quota percentage"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly decryption summary quota percentage"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily decryption summary quota percentage"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly decryption summary quota percentage"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"globalprotect logs quota percentage"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP logs quota percentage"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP summary quota percentage"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly SCTP summary quota percentage"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily SCTP summary quota percentage"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly SCTP summary quota percentage"}} # traffic logs quota percentage def traffic prop_get('traffic') end # traffic logs quota percentage def traffic=(val) prop_set('traffic', val) end # threat logs quota percentage def threat prop_get('threat') end # threat logs quota percentage def threat=(val) prop_set('threat', val) end # traffic summary quota percentage def trsum prop_get('trsum') end # traffic summary quota percentage def trsum=(val) prop_set('trsum', val) end # threat summary quota percentage def thsum prop_get('thsum') end # threat summary quota percentage def thsum=(val) prop_set('thsum', val) end # url summary quota percentage def urlsum prop_get('urlsum') end # url summary quota percentage def urlsum=(val) prop_set('urlsum', val) end # Hourly traffic summary quota percentage def hourlytrsum prop_get('hourlytrsum') end # Hourly traffic summary quota percentage def hourlytrsum=(val) prop_set('hourlytrsum', val) end # Daily traffic summary quota percentage def dailytrsum prop_get('dailytrsum') end # Daily traffic summary quota percentage def dailytrsum=(val) prop_set('dailytrsum', val) end # Weekly traffic summary quota percentage def weeklytrsum prop_get('weeklytrsum') end # Weekly traffic summary quota percentage def weeklytrsum=(val) prop_set('weeklytrsum', val) end # Hourly threat summary quota percentage def hourlythsum prop_get('hourlythsum') end # Hourly threat summary quota percentage def hourlythsum=(val) prop_set('hourlythsum', val) end # Daily threat summary quota percentage def dailythsum prop_get('dailythsum') end # Daily threat summary quota percentage def dailythsum=(val) prop_set('dailythsum', val) end # Weekly threat summary quota percentage def weeklythsum prop_get('weeklythsum') end # Weekly threat summary quota percentage def weeklythsum=(val) prop_set('weeklythsum', val) end # Hourly url summary quota percentage def hourlyurlsum prop_get('hourlyurlsum') end # Hourly url summary quota percentage def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # Daily url summary quota percentage def dailyurlsum prop_get('dailyurlsum') end # Daily url summary quota percentage def dailyurlsum=(val) prop_set('dailyurlsum', val) end # Weekly url summary quota percentage def weeklyurlsum prop_get('weeklyurlsum') end # Weekly url summary quota percentage def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # threat packet capture quota percentage def threat_pcaps prop_get('threat-pcaps') end # threat packet capture quota percentage def threat_pcaps=(val) prop_set('threat-pcaps', val) end # Hip match quota percentage def hipmatch prop_get('hipmatch') end # Hip match quota percentage def hipmatch=(val) prop_set('hipmatch', val) end # User ID logs quota percentage def userid prop_get('userid') end # User ID logs quota percentage def userid=(val) prop_set('userid', val) end # IP-Tag logs quota percentage def iptag prop_get('iptag') end # IP-Tag logs quota percentage def iptag=(val) prop_set('iptag', val) end # Authentication logs quota percentage def auth prop_get('auth') end # Authentication logs quota percentage def auth=(val) prop_set('auth', val) end # Tunnel and GTP logs quota percentage def gtp prop_get('gtp') end # Tunnel and GTP logs quota percentage def gtp=(val) prop_set('gtp', val) end # Tunnel and GTP summary quota percentage def gtpsum prop_get('gtpsum') end # Tunnel and GTP summary quota percentage def gtpsum=(val) prop_set('gtpsum', val) end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum prop_get('hourlygtpsum') end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # Daily Tunnel and GTP summary quota percentage def dailygtpsum prop_get('dailygtpsum') end # Daily Tunnel and GTP summary quota percentage def dailygtpsum=(val) prop_set('dailygtpsum', val) end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum prop_get('weeklygtpsum') end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # decryption logs quota percentage def decryption prop_get('decryption') end # decryption logs quota percentage def decryption=(val) prop_set('decryption', val) end # decryption summary quota percentage def desum prop_get('desum') end # decryption summary quota percentage def desum=(val) prop_set('desum', val) end # Hourly decryption summary quota percentage def hourlydesum prop_get('hourlydesum') end # Hourly decryption summary quota percentage def hourlydesum=(val) prop_set('hourlydesum', val) end # Daily decryption summary quota percentage def dailydesum prop_get('dailydesum') end # Daily decryption summary quota percentage def dailydesum=(val) prop_set('dailydesum', val) end # Weekly decryption summary quota percentage def weeklydesum prop_get('weeklydesum') end # Weekly decryption summary quota percentage def weeklydesum=(val) prop_set('weeklydesum', val) end # globalprotect logs quota percentage def globalprotect prop_get('globalprotect') end # globalprotect logs quota percentage def globalprotect=(val) prop_set('globalprotect', val) end # SCTP logs quota percentage def sctp prop_get('sctp') end # SCTP logs quota percentage def sctp=(val) prop_set('sctp', val) end # SCTP summary quota percentage def sctpsum prop_get('sctpsum') end # SCTP summary quota percentage def sctpsum=(val) prop_set('sctpsum', val) end # Hourly SCTP summary quota percentage def hourlysctpsum prop_get('hourlysctpsum') end # Hourly SCTP summary quota percentage def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # Daily SCTP summary quota percentage def dailysctpsum prop_get('dailysctpsum') end # Daily SCTP summary quota percentage def dailysctpsum=(val) prop_set('dailysctpsum', val) end # Weekly SCTP summary quota percentage def weeklysctpsum prop_get('weeklysctpsum') end # Weekly SCTP summary quota percentage def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end end # class LogCard def log_card @subclasses['log-card'] ||= LogCard.new(parent_instance: self, create_children: @create_children) end class MgmtCard < ConfigClass def has_multiple_values? false end def _section :'mgmt-card' end @props={"config"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"configuration logs quota percentage"}, "system"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"system logs quota percentage"}, "alarm"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"alarm logs quota percentage"}, "appstat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application statistics quota percentage"}, "hip-reports"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"host information profile quota percentage"}, "application-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application packet capture quota percentage"}, "debug-filter-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"debug filter packet capture quota percentage"}, "dlp-logs"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"data filter packet capture quota percentage"}} # configuration logs quota percentage def config prop_get('config') end # configuration logs quota percentage def config=(val) prop_set('config', val) end # system logs quota percentage def system prop_get('system') end # system logs quota percentage def system=(val) prop_set('system', val) end # alarm logs quota percentage def alarm prop_get('alarm') end # alarm logs quota percentage def alarm=(val) prop_set('alarm', val) end # application statistics quota percentage def appstat prop_get('appstat') end # application statistics quota percentage def appstat=(val) prop_set('appstat', val) end # host information profile quota percentage def hip_reports prop_get('hip-reports') end # host information profile quota percentage def hip_reports=(val) prop_set('hip-reports', val) end # application packet capture quota percentage def application_pcaps prop_get('application-pcaps') end # application packet capture quota percentage def application_pcaps=(val) prop_set('application-pcaps', val) end # debug filter packet capture quota percentage def debug_filter_pcaps prop_get('debug-filter-pcaps') end # debug filter packet capture quota percentage def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # data filter packet capture quota percentage def dlp_logs prop_get('dlp-logs') end # data filter packet capture quota percentage def dlp_logs=(val) prop_set('dlp-logs', val) end end # class MgmtCard def mgmt_card @subclasses['mgmt-card'] ||= MgmtCard.new(parent_instance: self, create_children: @create_children) end @props={} end # class ChassisQuota def chassis_quota @subclasses['chassis-quota'] ||= ChassisQuota.new(parent_instance: self, create_children: @create_children) end class ChassisLogExpirationPeriod < ConfigClass def has_multiple_values? false end def _section :'chassis-log-expiration-period' end class LogCard < ConfigClass def has_multiple_values? false end def _section :'log-card' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for traffic logs"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat logs"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for decryption logs"}, "trsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for urlsum logs"}, "thsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for thsum logs"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for desum logs"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlytrsum logs"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailytrsum logs"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklytrsum logs"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlythsum logs"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailythsum logs"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklythsum logs"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlyurlsum logs"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailyurlsum logs"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklyurlsum logs"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlydesum logs"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailydesum logs"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklydesum logs"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat-pcaps logs"}, "hipmatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hipmatch logs"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for User-ID logs"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for authentication logs"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for iptag logs"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp logs"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp summary logs"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly tunnel and gtp summary logs"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily tunnel and gtp summary logs"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly tunnel and gtp summary logs"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for globalprotect logs"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp logs"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp summary logs"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly sctp summmary logs"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily sctp summary logs"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly sctp summary logs"}} # expiration period for traffic logs def traffic prop_get('traffic') end # expiration period for traffic logs def traffic=(val) prop_set('traffic', val) end # expiration period for threat logs def threat prop_get('threat') end # expiration period for threat logs def threat=(val) prop_set('threat', val) end # expiration period for decryption logs def decryption prop_get('decryption') end # expiration period for decryption logs def decryption=(val) prop_set('decryption', val) end # expiration period for trsum logs def trsum prop_get('trsum') end # expiration period for trsum logs def trsum=(val) prop_set('trsum', val) end # expiration period for urlsum logs def urlsum prop_get('urlsum') end # expiration period for urlsum logs def urlsum=(val) prop_set('urlsum', val) end # expiration period for thsum logs def thsum prop_get('thsum') end # expiration period for thsum logs def thsum=(val) prop_set('thsum', val) end # expiration period for desum logs def desum prop_get('desum') end # expiration period for desum logs def desum=(val) prop_set('desum', val) end # expiration period for hourlytrsum logs def hourlytrsum prop_get('hourlytrsum') end # expiration period for hourlytrsum logs def hourlytrsum=(val) prop_set('hourlytrsum', val) end # expiration period for dailytrsum logs def dailytrsum prop_get('dailytrsum') end # expiration period for dailytrsum logs def dailytrsum=(val) prop_set('dailytrsum', val) end # expiration period for weeklytrsum logs def weeklytrsum prop_get('weeklytrsum') end # expiration period for weeklytrsum logs def weeklytrsum=(val) prop_set('weeklytrsum', val) end # expiration period for hourlythsum logs def hourlythsum prop_get('hourlythsum') end # expiration period for hourlythsum logs def hourlythsum=(val) prop_set('hourlythsum', val) end # expiration period for dailythsum logs def dailythsum prop_get('dailythsum') end # expiration period for dailythsum logs def dailythsum=(val) prop_set('dailythsum', val) end # expiration period for weeklythsum logs def weeklythsum prop_get('weeklythsum') end # expiration period for weeklythsum logs def weeklythsum=(val) prop_set('weeklythsum', val) end # expiration period for hourlyurlsum logs def hourlyurlsum prop_get('hourlyurlsum') end # expiration period for hourlyurlsum logs def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # expiration period for dailyurlsum logs def dailyurlsum prop_get('dailyurlsum') end # expiration period for dailyurlsum logs def dailyurlsum=(val) prop_set('dailyurlsum', val) end # expiration period for weeklyurlsum logs def weeklyurlsum prop_get('weeklyurlsum') end # expiration period for weeklyurlsum logs def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # expiration period for hourlydesum logs def hourlydesum prop_get('hourlydesum') end # expiration period for hourlydesum logs def hourlydesum=(val) prop_set('hourlydesum', val) end # expiration period for dailydesum logs def dailydesum prop_get('dailydesum') end # expiration period for dailydesum logs def dailydesum=(val) prop_set('dailydesum', val) end # expiration period for weeklydesum logs def weeklydesum prop_get('weeklydesum') end # expiration period for weeklydesum logs def weeklydesum=(val) prop_set('weeklydesum', val) end # expiration period for threat-pcaps logs def threat_pcaps prop_get('threat-pcaps') end # expiration period for threat-pcaps logs def threat_pcaps=(val) prop_set('threat-pcaps', val) end # expiration period for hipmatch logs def hipmatch prop_get('hipmatch') end # expiration period for hipmatch logs def hipmatch=(val) prop_set('hipmatch', val) end # expiration period for User-ID logs def userid prop_get('userid') end # expiration period for User-ID logs def userid=(val) prop_set('userid', val) end # expiration period for authentication logs def auth prop_get('auth') end # expiration period for authentication logs def auth=(val) prop_set('auth', val) end # expiration period for iptag logs def iptag prop_get('iptag') end # expiration period for iptag logs def iptag=(val) prop_set('iptag', val) end # expiration period for tunnel and gtp logs def gtp prop_get('gtp') end # expiration period for tunnel and gtp logs def gtp=(val) prop_set('gtp', val) end # expiration period for tunnel and gtp summary logs def gtpsum prop_get('gtpsum') end # expiration period for tunnel and gtp summary logs def gtpsum=(val) prop_set('gtpsum', val) end # expiration period for hourly tunnel and gtp summary logs def hourlygtpsum prop_get('hourlygtpsum') end # expiration period for hourly tunnel and gtp summary logs def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # expiration period for daily tunnel and gtp summary logs def dailygtpsum prop_get('dailygtpsum') end # expiration period for daily tunnel and gtp summary logs def dailygtpsum=(val) prop_set('dailygtpsum', val) end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum prop_get('weeklygtpsum') end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # expiration period for globalprotect logs def globalprotect prop_get('globalprotect') end # expiration period for globalprotect logs def globalprotect=(val) prop_set('globalprotect', val) end # expiration period for sctp logs def sctp prop_get('sctp') end # expiration period for sctp logs def sctp=(val) prop_set('sctp', val) end # expiration period for sctp summary logs def sctpsum prop_get('sctpsum') end # expiration period for sctp summary logs def sctpsum=(val) prop_set('sctpsum', val) end # expiration period for hourly sctp summmary logs def hourlysctpsum prop_get('hourlysctpsum') end # expiration period for hourly sctp summmary logs def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # expiration period for daily sctp summary logs def dailysctpsum prop_get('dailysctpsum') end # expiration period for daily sctp summary logs def dailysctpsum=(val) prop_set('dailysctpsum', val) end # expiration period for weekly sctp summary logs def weeklysctpsum prop_get('weeklysctpsum') end # expiration period for weekly sctp summary logs def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end end # class LogCard def log_card @subclasses['log-card'] ||= LogCard.new(parent_instance: self, create_children: @create_children) end class MgmtCard < ConfigClass def has_multiple_values? false end def _section :'mgmt-card' end @props={"config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for config logs"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for system logs"}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for alarm logs"}, "appstat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for appstat logs"}, "hip-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hip-reports logs"}, "application-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for application-pcaps logs"}, "debug-filter-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for debug-filter-pcaps logs"}, "dlp-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dlp-logs"}} # expiration period for config logs def config prop_get('config') end # expiration period for config logs def config=(val) prop_set('config', val) end # expiration period for system logs def system prop_get('system') end # expiration period for system logs def system=(val) prop_set('system', val) end # expiration period for alarm logs def alarm prop_get('alarm') end # expiration period for alarm logs def alarm=(val) prop_set('alarm', val) end # expiration period for appstat logs def appstat prop_get('appstat') end # expiration period for appstat logs def appstat=(val) prop_set('appstat', val) end # expiration period for hip-reports logs def hip_reports prop_get('hip-reports') end # expiration period for hip-reports logs def hip_reports=(val) prop_set('hip-reports', val) end # expiration period for application-pcaps logs def application_pcaps prop_get('application-pcaps') end # expiration period for application-pcaps logs def application_pcaps=(val) prop_set('application-pcaps', val) end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps prop_get('debug-filter-pcaps') end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # expiration period for dlp-logs def dlp_logs prop_get('dlp-logs') end # expiration period for dlp-logs def dlp_logs=(val) prop_set('dlp-logs', val) end end # class MgmtCard def mgmt_card @subclasses['mgmt-card'] ||= MgmtCard.new(parent_instance: self, create_children: @create_children) end @props={} end # class ChassisLogExpirationPeriod def chassis_log_expiration_period @subclasses['chassis-log-expiration-period'] ||= ChassisLogExpirationPeriod.new(parent_instance: self, create_children: @create_children) end class LogExpirationPeriod < ConfigClass def has_multiple_values? false end def _section :'log-expiration-period' end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for traffic logs"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat logs"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for decryption logs"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for config logs"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for system logs"}, "alarm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for alarm logs"}, "appstat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for appstat logs"}, "trsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs"}, "thsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for trsum logs"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for urlsum logs"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for desum logs"}, "hipmatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hipmatch logs"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlytrsum logs"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailytrsum logs"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklytrsum logs"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlythsum logs"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailythsum logs"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklythsum logs"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlyurlsum logs"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailyurlsum logs"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklyurlsum logs"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for threat-pcaps logs"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp logs"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for tunnel and gtp summary logs"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly tunnel and gtp summmary logs"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily tunnel and gtp summary logs"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly tunnel and gtp summary logs"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourlydesum logs"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dailydesum logs"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weeklydesum logs"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp logs"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for sctp summary logs"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hourly sctp summmary logs"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for daily sctp summary logs"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for weekly sctp summary logs"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for User-ID logs"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for iptag logs"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for authentication logs"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for globalprotect logs"}, "dlp-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for dlp-logs logs"}, "application-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for application-pcaps logs"}, "debug-filter-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for debug-filter-pcaps logs"}, "hip-reports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for hip-reports logs"}} # expiration period for traffic logs def traffic prop_get('traffic') end # expiration period for traffic logs def traffic=(val) prop_set('traffic', val) end # expiration period for threat logs def threat prop_get('threat') end # expiration period for threat logs def threat=(val) prop_set('threat', val) end # expiration period for decryption logs def decryption prop_get('decryption') end # expiration period for decryption logs def decryption=(val) prop_set('decryption', val) end # expiration period for config logs def config prop_get('config') end # expiration period for config logs def config=(val) prop_set('config', val) end # expiration period for system logs def system prop_get('system') end # expiration period for system logs def system=(val) prop_set('system', val) end # expiration period for alarm logs def alarm prop_get('alarm') end # expiration period for alarm logs def alarm=(val) prop_set('alarm', val) end # expiration period for appstat logs def appstat prop_get('appstat') end # expiration period for appstat logs def appstat=(val) prop_set('appstat', val) end # expiration period for trsum logs def trsum prop_get('trsum') end # expiration period for trsum logs def trsum=(val) prop_set('trsum', val) end # expiration period for trsum logs def thsum prop_get('thsum') end # expiration period for trsum logs def thsum=(val) prop_set('thsum', val) end # expiration period for urlsum logs def urlsum prop_get('urlsum') end # expiration period for urlsum logs def urlsum=(val) prop_set('urlsum', val) end # expiration period for desum logs def desum prop_get('desum') end # expiration period for desum logs def desum=(val) prop_set('desum', val) end # expiration period for hipmatch logs def hipmatch prop_get('hipmatch') end # expiration period for hipmatch logs def hipmatch=(val) prop_set('hipmatch', val) end # expiration period for hourlytrsum logs def hourlytrsum prop_get('hourlytrsum') end # expiration period for hourlytrsum logs def hourlytrsum=(val) prop_set('hourlytrsum', val) end # expiration period for dailytrsum logs def dailytrsum prop_get('dailytrsum') end # expiration period for dailytrsum logs def dailytrsum=(val) prop_set('dailytrsum', val) end # expiration period for weeklytrsum logs def weeklytrsum prop_get('weeklytrsum') end # expiration period for weeklytrsum logs def weeklytrsum=(val) prop_set('weeklytrsum', val) end # expiration period for hourlythsum logs def hourlythsum prop_get('hourlythsum') end # expiration period for hourlythsum logs def hourlythsum=(val) prop_set('hourlythsum', val) end # expiration period for dailythsum logs def dailythsum prop_get('dailythsum') end # expiration period for dailythsum logs def dailythsum=(val) prop_set('dailythsum', val) end # expiration period for weeklythsum logs def weeklythsum prop_get('weeklythsum') end # expiration period for weeklythsum logs def weeklythsum=(val) prop_set('weeklythsum', val) end # expiration period for hourlyurlsum logs def hourlyurlsum prop_get('hourlyurlsum') end # expiration period for hourlyurlsum logs def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # expiration period for dailyurlsum logs def dailyurlsum prop_get('dailyurlsum') end # expiration period for dailyurlsum logs def dailyurlsum=(val) prop_set('dailyurlsum', val) end # expiration period for weeklyurlsum logs def weeklyurlsum prop_get('weeklyurlsum') end # expiration period for weeklyurlsum logs def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # expiration period for threat-pcaps logs def threat_pcaps prop_get('threat-pcaps') end # expiration period for threat-pcaps logs def threat_pcaps=(val) prop_set('threat-pcaps', val) end # expiration period for tunnel and gtp logs def gtp prop_get('gtp') end # expiration period for tunnel and gtp logs def gtp=(val) prop_set('gtp', val) end # expiration period for tunnel and gtp summary logs def gtpsum prop_get('gtpsum') end # expiration period for tunnel and gtp summary logs def gtpsum=(val) prop_set('gtpsum', val) end # expiration period for hourly tunnel and gtp summmary logs def hourlygtpsum prop_get('hourlygtpsum') end # expiration period for hourly tunnel and gtp summmary logs def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # expiration period for daily tunnel and gtp summary logs def dailygtpsum prop_get('dailygtpsum') end # expiration period for daily tunnel and gtp summary logs def dailygtpsum=(val) prop_set('dailygtpsum', val) end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum prop_get('weeklygtpsum') end # expiration period for weekly tunnel and gtp summary logs def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # expiration period for hourlydesum logs def hourlydesum prop_get('hourlydesum') end # expiration period for hourlydesum logs def hourlydesum=(val) prop_set('hourlydesum', val) end # expiration period for dailydesum logs def dailydesum prop_get('dailydesum') end # expiration period for dailydesum logs def dailydesum=(val) prop_set('dailydesum', val) end # expiration period for weeklydesum logs def weeklydesum prop_get('weeklydesum') end # expiration period for weeklydesum logs def weeklydesum=(val) prop_set('weeklydesum', val) end # expiration period for sctp logs def sctp prop_get('sctp') end # expiration period for sctp logs def sctp=(val) prop_set('sctp', val) end # expiration period for sctp summary logs def sctpsum prop_get('sctpsum') end # expiration period for sctp summary logs def sctpsum=(val) prop_set('sctpsum', val) end # expiration period for hourly sctp summmary logs def hourlysctpsum prop_get('hourlysctpsum') end # expiration period for hourly sctp summmary logs def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # expiration period for daily sctp summary logs def dailysctpsum prop_get('dailysctpsum') end # expiration period for daily sctp summary logs def dailysctpsum=(val) prop_set('dailysctpsum', val) end # expiration period for weekly sctp summary logs def weeklysctpsum prop_get('weeklysctpsum') end # expiration period for weekly sctp summary logs def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end # expiration period for User-ID logs def userid prop_get('userid') end # expiration period for User-ID logs def userid=(val) prop_set('userid', val) end # expiration period for iptag logs def iptag prop_get('iptag') end # expiration period for iptag logs def iptag=(val) prop_set('iptag', val) end # expiration period for authentication logs def auth prop_get('auth') end # expiration period for authentication logs def auth=(val) prop_set('auth', val) end # expiration period for globalprotect logs def globalprotect prop_get('globalprotect') end # expiration period for globalprotect logs def globalprotect=(val) prop_set('globalprotect', val) end # expiration period for dlp-logs logs def dlp_logs prop_get('dlp-logs') end # expiration period for dlp-logs logs def dlp_logs=(val) prop_set('dlp-logs', val) end # expiration period for application-pcaps logs def application_pcaps prop_get('application-pcaps') end # expiration period for application-pcaps logs def application_pcaps=(val) prop_set('application-pcaps', val) end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps prop_get('debug-filter-pcaps') end # expiration period for debug-filter-pcaps logs def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # expiration period for hip-reports logs def hip_reports prop_get('hip-reports') end # expiration period for hip-reports logs def hip_reports=(val) prop_set('hip-reports', val) end end # class LogExpirationPeriod def log_expiration_period @subclasses['log-expiration-period'] ||= LogExpirationPeriod.new(parent_instance: self, create_children: @create_children) end class DiskQuota < ConfigClass def has_multiple_values? false end def _section :'disk-quota' end @props={"traffic"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic logs quota percentage"}, "threat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat logs quota percentage"}, "config"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"configuration logs quota percentage"}, "system"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"system logs quota percentage"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"globalprotect logs quota percentage"}, "desum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption summary quota percentage"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"decryption logs quota percentage"}, "alarm"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"alarm logs quota percentage"}, "appstat"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application statistics quota percentage"}, "trsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic summary quota percentage"}, "thsum"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat summary quota percentage"}, "urlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"url summary quota percentage"}, "hipmatch"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hip match quota percentage"}, "hourlytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly traffic summary quota percentage"}, "dailytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily traffic summary quota percentage"}, "weeklytrsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly traffic summary quota percentage"}, "hourlythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly threat summary quota percentage"}, "dailythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily threat summary quota percentage"}, "weeklythsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly threat summary quota percentage"}, "hourlyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly url summary quota percentage"}, "dailyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily url summary quota percentage"}, "weeklyurlsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly url summary quota percentage"}, "threat-pcaps"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"threat packet capture quota percentage"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP logs quota percentage"}, "gtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Tunnel and GTP summary quota percentage"}, "hourlygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly Tunnel and GTP summary quota percentage"}, "dailygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily Tunnel and GTP summary quota percentage"}, "weeklygtpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly Tunnel and GTP summary quota percentage"}, "hourlydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly decryption summary quota percentage"}, "dailydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily decryption summary quota percentage"}, "weeklydesum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly decryption summary quota percentage"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP logs quota percentage"}, "sctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"SCTP summary quota percentage"}, "hourlysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Hourly SCTP summary quota percentage"}, "dailysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Daily SCTP summary quota percentage"}, "weeklysctpsum"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Weekly SCTP summary quota percentage"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"User ID logs quota percentage"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"Authentication logs quota percentage"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"IP Tag logs quota percentage"}, "dlp-logs"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"DLP log data quota percentage"}, "application-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"application packet capture quota percentage"}, "debug-filter-pcaps"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"debug filter packet capture quota percentage"}, "hip-reports"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"host information profile quota percentage"}} # traffic logs quota percentage def traffic prop_get('traffic') end # traffic logs quota percentage def traffic=(val) prop_set('traffic', val) end # threat logs quota percentage def threat prop_get('threat') end # threat logs quota percentage def threat=(val) prop_set('threat', val) end # configuration logs quota percentage def config prop_get('config') end # configuration logs quota percentage def config=(val) prop_set('config', val) end # system logs quota percentage def system prop_get('system') end # system logs quota percentage def system=(val) prop_set('system', val) end # globalprotect logs quota percentage def globalprotect prop_get('globalprotect') end # globalprotect logs quota percentage def globalprotect=(val) prop_set('globalprotect', val) end # decryption summary quota percentage def desum prop_get('desum') end # decryption summary quota percentage def desum=(val) prop_set('desum', val) end # decryption logs quota percentage def decryption prop_get('decryption') end # decryption logs quota percentage def decryption=(val) prop_set('decryption', val) end # alarm logs quota percentage def alarm prop_get('alarm') end # alarm logs quota percentage def alarm=(val) prop_set('alarm', val) end # application statistics quota percentage def appstat prop_get('appstat') end # application statistics quota percentage def appstat=(val) prop_set('appstat', val) end # traffic summary quota percentage def trsum prop_get('trsum') end # traffic summary quota percentage def trsum=(val) prop_set('trsum', val) end # threat summary quota percentage def thsum prop_get('thsum') end # threat summary quota percentage def thsum=(val) prop_set('thsum', val) end # url summary quota percentage def urlsum prop_get('urlsum') end # url summary quota percentage def urlsum=(val) prop_set('urlsum', val) end # Hip match quota percentage def hipmatch prop_get('hipmatch') end # Hip match quota percentage def hipmatch=(val) prop_set('hipmatch', val) end # Hourly traffic summary quota percentage def hourlytrsum prop_get('hourlytrsum') end # Hourly traffic summary quota percentage def hourlytrsum=(val) prop_set('hourlytrsum', val) end # Daily traffic summary quota percentage def dailytrsum prop_get('dailytrsum') end # Daily traffic summary quota percentage def dailytrsum=(val) prop_set('dailytrsum', val) end # Weekly traffic summary quota percentage def weeklytrsum prop_get('weeklytrsum') end # Weekly traffic summary quota percentage def weeklytrsum=(val) prop_set('weeklytrsum', val) end # Hourly threat summary quota percentage def hourlythsum prop_get('hourlythsum') end # Hourly threat summary quota percentage def hourlythsum=(val) prop_set('hourlythsum', val) end # Daily threat summary quota percentage def dailythsum prop_get('dailythsum') end # Daily threat summary quota percentage def dailythsum=(val) prop_set('dailythsum', val) end # Weekly threat summary quota percentage def weeklythsum prop_get('weeklythsum') end # Weekly threat summary quota percentage def weeklythsum=(val) prop_set('weeklythsum', val) end # Hourly url summary quota percentage def hourlyurlsum prop_get('hourlyurlsum') end # Hourly url summary quota percentage def hourlyurlsum=(val) prop_set('hourlyurlsum', val) end # Daily url summary quota percentage def dailyurlsum prop_get('dailyurlsum') end # Daily url summary quota percentage def dailyurlsum=(val) prop_set('dailyurlsum', val) end # Weekly url summary quota percentage def weeklyurlsum prop_get('weeklyurlsum') end # Weekly url summary quota percentage def weeklyurlsum=(val) prop_set('weeklyurlsum', val) end # threat packet capture quota percentage def threat_pcaps prop_get('threat-pcaps') end # threat packet capture quota percentage def threat_pcaps=(val) prop_set('threat-pcaps', val) end # Tunnel and GTP logs quota percentage def gtp prop_get('gtp') end # Tunnel and GTP logs quota percentage def gtp=(val) prop_set('gtp', val) end # Tunnel and GTP summary quota percentage def gtpsum prop_get('gtpsum') end # Tunnel and GTP summary quota percentage def gtpsum=(val) prop_set('gtpsum', val) end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum prop_get('hourlygtpsum') end # Hourly Tunnel and GTP summary quota percentage def hourlygtpsum=(val) prop_set('hourlygtpsum', val) end # Daily Tunnel and GTP summary quota percentage def dailygtpsum prop_get('dailygtpsum') end # Daily Tunnel and GTP summary quota percentage def dailygtpsum=(val) prop_set('dailygtpsum', val) end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum prop_get('weeklygtpsum') end # Weekly Tunnel and GTP summary quota percentage def weeklygtpsum=(val) prop_set('weeklygtpsum', val) end # Hourly decryption summary quota percentage def hourlydesum prop_get('hourlydesum') end # Hourly decryption summary quota percentage def hourlydesum=(val) prop_set('hourlydesum', val) end # Daily decryption summary quota percentage def dailydesum prop_get('dailydesum') end # Daily decryption summary quota percentage def dailydesum=(val) prop_set('dailydesum', val) end # Weekly decryption summary quota percentage def weeklydesum prop_get('weeklydesum') end # Weekly decryption summary quota percentage def weeklydesum=(val) prop_set('weeklydesum', val) end # SCTP logs quota percentage def sctp prop_get('sctp') end # SCTP logs quota percentage def sctp=(val) prop_set('sctp', val) end # SCTP summary quota percentage def sctpsum prop_get('sctpsum') end # SCTP summary quota percentage def sctpsum=(val) prop_set('sctpsum', val) end # Hourly SCTP summary quota percentage def hourlysctpsum prop_get('hourlysctpsum') end # Hourly SCTP summary quota percentage def hourlysctpsum=(val) prop_set('hourlysctpsum', val) end # Daily SCTP summary quota percentage def dailysctpsum prop_get('dailysctpsum') end # Daily SCTP summary quota percentage def dailysctpsum=(val) prop_set('dailysctpsum', val) end # Weekly SCTP summary quota percentage def weeklysctpsum prop_get('weeklysctpsum') end # Weekly SCTP summary quota percentage def weeklysctpsum=(val) prop_set('weeklysctpsum', val) end # User ID logs quota percentage def userid prop_get('userid') end # User ID logs quota percentage def userid=(val) prop_set('userid', val) end # Authentication logs quota percentage def auth prop_get('auth') end # Authentication logs quota percentage def auth=(val) prop_set('auth', val) end # IP Tag logs quota percentage def iptag prop_get('iptag') end # IP Tag logs quota percentage def iptag=(val) prop_set('iptag', val) end # DLP log data quota percentage def dlp_logs prop_get('dlp-logs') end # DLP log data quota percentage def dlp_logs=(val) prop_set('dlp-logs', val) end # application packet capture quota percentage def application_pcaps prop_get('application-pcaps') end # application packet capture quota percentage def application_pcaps=(val) prop_set('application-pcaps', val) end # debug filter packet capture quota percentage def debug_filter_pcaps prop_get('debug-filter-pcaps') end # debug filter packet capture quota percentage def debug_filter_pcaps=(val) prop_set('debug-filter-pcaps', val) end # host information profile quota percentage def hip_reports prop_get('hip-reports') end # host information profile quota percentage def hip_reports=(val) prop_set('hip-reports', val) end end # class DiskQuota def disk_quota @subclasses['disk-quota'] ||= DiskQuota.new(parent_instance: self, create_children: @create_children) end @props={} end # class QuotaSettings def quota_settings @subclasses['quota-settings'] ||= QuotaSettings.new(parent_instance: self, create_children: @create_children) end class DisablePredefinedReports < XML::ConfigClass def has_multiple_values? true end def _section :'disable-predefined-reports' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"report element", "autocomplete"=>"yes", "memberof"=>["##/predefined/reports/entry/@name"]}} # report element def member prop_get('member') end # report element def member=(val) prop_set('member', val) end end # class DisablePredefinedReports def disable_predefined_reports if @create_children @subclasses['disable-predefined-reports'] ||= DisablePredefinedReports.new(parent_instance: self, create_children: @create_children) else DisablePredefinedReports.new(parent_instance: self) end end class DisablePredefinedCorrelationObjs < XML::ConfigClass def has_multiple_values? true end def _section :'disable-predefined-correlation-objs' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"32", "help-string"=>"Correlation objects"}} # Correlation objects def member prop_get('member') end # Correlation objects def member=(val) prop_set('member', val) end end # class DisablePredefinedCorrelationObjs def disable_predefined_correlation_objs if @create_children @subclasses['disable-predefined-correlation-objs'] ||= DisablePredefinedCorrelationObjs.new(parent_instance: self, create_children: @create_children) else DisablePredefinedCorrelationObjs.new(parent_instance: self) end end class CommonCriteria < ConfigClass def has_multiple_values? false end def _section :'common-criteria' end class SkipConfigurationLogsFor < XML::ConfigClass def has_multiple_values? true end def _section :'skip-configuration-logs-for' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SkipConfigurationLogsFor def skip_configuration_logs_for if @create_children @subclasses['skip-configuration-logs-for'] ||= SkipConfigurationLogsFor.new(parent_instance: self, create_children: @create_children) else SkipConfigurationLogsFor.new(parent_instance: self) end end class SelfTestSchedule < ConfigClass def has_multiple_values? false end def _section :'self-test-schedule' end class Crypto < ConfigClass def has_multiple_values? false end def _section :'crypto' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class Crypto def crypto @subclasses['crypto'] ||= Crypto.new(parent_instance: self, create_children: @create_children) end class SoftwareIntegrity < ConfigClass def has_multiple_values? false end def _section :'software-integrity' end class StartTime < XML::ConfigClass def has_multiple_values? true end def _section :'start-time' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=> "Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100."}} # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member prop_get('member') end # Time to start daily self-test hh:mm (e.g. 03:30). Maximum 100. def member=(val) prop_set('member', val) end end # class StartTime def start_time if @create_children @subclasses['start-time'] ||= StartTime.new(parent_instance: self, create_children: @create_children) else StartTime.new(parent_instance: self) end end @props={} end # class SoftwareIntegrity def software_integrity @subclasses['software-integrity'] ||= SoftwareIntegrity.new(parent_instance: self, create_children: @create_children) end @props={} end # class SelfTestSchedule def self_test_schedule @subclasses['self-test-schedule'] ||= SelfTestSchedule.new(parent_instance: self, create_children: @create_children) end @props={"enable-cconly-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable logging of Common-Criteria only logs"}, "enable-packet-drop-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable logging of dropped packets"}, "skip-authentication-success-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not log successful authentication"}, "skip-authentication-failure-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not log unsuccessful authentication attempts"}, "enable-tls-session-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable logging TLS sessions"}, "enable-ocsp-crl-logs"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable CA (OCSP/CRL) Session Establishment Logging"}, "enable-ike-logging"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable IKE session Logging"}} # Enable logging of Common-Criteria only logs def enable_cconly_logs prop_get('enable-cconly-logs') end # Enable logging of Common-Criteria only logs def enable_cconly_logs=(val) prop_set('enable-cconly-logs', val) end # Enable logging of dropped packets def enable_packet_drop_logs prop_get('enable-packet-drop-logs') end # Enable logging of dropped packets def enable_packet_drop_logs=(val) prop_set('enable-packet-drop-logs', val) end # Do not log successful authentication def skip_authentication_success_logs prop_get('skip-authentication-success-logs') end # Do not log successful authentication def skip_authentication_success_logs=(val) prop_set('skip-authentication-success-logs', val) end # Do not log unsuccessful authentication attempts def skip_authentication_failure_logs prop_get('skip-authentication-failure-logs') end # Do not log unsuccessful authentication attempts def skip_authentication_failure_logs=(val) prop_set('skip-authentication-failure-logs', val) end # Enable logging TLS sessions def enable_tls_session_logging prop_get('enable-tls-session-logging') end # Enable logging TLS sessions def enable_tls_session_logging=(val) prop_set('enable-tls-session-logging', val) end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs prop_get('enable-ocsp-crl-logs') end # Enable CA (OCSP/CRL) Session Establishment Logging def enable_ocsp_crl_logs=(val) prop_set('enable-ocsp-crl-logs', val) end # Enable IKE session Logging def enable_ike_logging prop_get('enable-ike-logging') end # Enable IKE session Logging def enable_ike_logging=(val) prop_set('enable-ike-logging', val) end end # class CommonCriteria def common_criteria @subclasses['common-criteria'] ||= CommonCriteria.new(parent_instance: self, create_children: @create_children) end class Api < ConfigClass def has_multiple_values? false end def _section :'api' end class Key < ConfigClass def has_multiple_values? false end def _section :'key' end @props={"lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"api key lifetime in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"525600"}, "enum"=>[{"value"=>"0", "help-string"=>"never"}]}}} # api key lifetime in minutes def lifetime prop_get('lifetime') end # api key lifetime in minutes def lifetime=(val) prop_set('lifetime', val) end end # class Key def key @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) end @props={} end # class Api def api @subclasses['api'] ||= Api.new(parent_instance: self, create_children: @create_children) end class AdminLockout < ConfigClass def has_multiple_values? false end def _section :'admin-lockout' end @props={"failed-attempts__1"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "default"=>"10", "type"=>"rangedint", "min"=>"1", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "failed-attempts__2"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "default"=>"0", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time__3"=> {"node-type"=>"element", "prune-on"=>"non-fips-mode", "default"=>"0", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}, "lockout-time__4"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "default"=>"0", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts__1 prop_get('failed-attempts__1') end # Number of failed login attempts to trigger lock-out def failed_attempts__1=(val) prop_set('failed-attempts__1', val) end # Number of failed login attempts to trigger lock-out def failed_attempts__2 prop_get('failed-attempts__2') end # Number of failed login attempts to trigger lock-out def failed_attempts__2=(val) prop_set('failed-attempts__2', val) end # Number of minutes to lock-out def lockout_time__3 prop_get('lockout-time__3') end # Number of minutes to lock-out def lockout_time__3=(val) prop_set('lockout-time__3', val) end # Number of minutes to lock-out def lockout_time__4 prop_get('lockout-time__4') end # Number of minutes to lock-out def lockout_time__4=(val) prop_set('lockout-time__4', val) end end # class AdminLockout def admin_lockout @subclasses['admin-lockout'] ||= AdminLockout.new(parent_instance: self, create_children: @create_children) end class AdminSession < ConfigClass def has_multiple_values? false end def _section :'admin-session' end @props={"max-session-count__1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"4", "prune-on"=>"non-fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"720", "prune-on"=>"non-fips-mode", "help-string"=>"Set the maximum session time (60-1499 minutes)", "regex"=>"^(([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}, "max-session-count__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=>"Set the maximum session time (0, 60-1499 minutes)", "regex"=>"^((0)|([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}} # Set the maximum number of sessions administrators are allowed def max_session_count__1 prop_get('max-session-count__1') end # Set the maximum number of sessions administrators are allowed def max_session_count__1=(val) prop_set('max-session-count__1', val) end # Set the maximum session time (60-1499 minutes) def max_session_time__2 prop_get('max-session-time__2') end # Set the maximum session time (60-1499 minutes) def max_session_time__2=(val) prop_set('max-session-time__2', val) end # Set the maximum number of sessions administrators are allowed def max_session_count__3 prop_get('max-session-count__3') end # Set the maximum number of sessions administrators are allowed def max_session_count__3=(val) prop_set('max-session-count__3', val) end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4 prop_get('max-session-time__4') end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4=(val) prop_set('max-session-time__4', val) end end # class AdminSession def admin_session @subclasses['admin-session'] ||= AdminSession.new(parent_instance: self, create_children: @create_children) end class BrowseActivityReportSetting < ConfigClass def has_multiple_values? false end def _section :'browse-activity-report-setting' end @props={"average-browse-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"300", "default"=>"60", "help-string"=>"Average time in seconds for a browse session"}, "page-load-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"20", "help-string"=>"Average time in seconds to load a URL page"}} # Average time in seconds for a browse session def average_browse_time prop_get('average-browse-time') end # Average time in seconds for a browse session def average_browse_time=(val) prop_set('average-browse-time', val) end # Average time in seconds to load a URL page def page_load_threshold prop_get('page-load-threshold') end # Average time in seconds to load a URL page def page_load_threshold=(val) prop_set('page-load-threshold', val) end end # class BrowseActivityReportSetting def browse_activity_report_setting @subclasses['browse-activity-report-setting'] ||= BrowseActivityReportSetting.new(parent_instance: self, create_children: @create_children) end class DeviceMonitoring < ConfigClass def has_multiple_values? false end def _section :'device-monitoring' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable device monitoring"}} # Enable device monitoring def enabled prop_get('enabled') end # Enable device monitoring def enabled=(val) prop_set('enabled', val) end end # class DeviceMonitoring def device_monitoring @subclasses['device-monitoring'] ||= DeviceMonitoring.new(parent_instance: self, create_children: @create_children) end class CommonCriteriaAlarmGeneration < ConfigClass def has_multiple_values? false end def _section :'common-criteria-alarm-generation' end class SecurityPolicyLimits < ConfigClass def has_multiple_values? false end def _section :'security-policy-limits' end @props={"count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295"}, "time-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"30", "max"=>"86400"}} def count prop_get('count') end def count=(val) prop_set('count', val) end def time_interval prop_get('time-interval') end def time_interval=(val) prop_set('time-interval', val) end end # class SecurityPolicyLimits def security_policy_limits @subclasses['security-policy-limits'] ||= SecurityPolicyLimits.new(parent_instance: self, create_children: @create_children) end class RuleGroupLimits < ConfigClass def has_multiple_values? false end def _section :'rule-group-limits' end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/security/rules/entry/tag/member", "##/shared/post-rulebase/security/rules/entry/tag/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"count"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295"}, "time-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"30", "max"=>"86400"}} def count prop_get('count') end def count=(val) prop_set('count', val) end def time_interval prop_get('time-interval') end def time_interval=(val) prop_set('time-interval', val) end end # class RuleGroupLimits def rule_group_limits @subclasses['rule-group-limits'] ||= RuleGroupLimits.new(parent_instance: self, create_children: @create_children) end class LogDatabasesAlarmThreshold < ConfigClass def has_multiple_values? false end def _section :'log-databases-alarm-threshold' end @props={"traffic"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "traffic logs database % full threshold value for alarm generation"}, "threat"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "threat logs database % full threshold value for alarm generation"}, "config"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "configuration logs database % full threshold value for alarm generation"}, "system"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "system logs database % full threshold value for alarm generation"}, "alarm"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "alarm logs database % full threshold value for alarm generation"}, "hipmatch"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "hipmatch logs database % full threshold value for alarm generation"}, "userid"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "User-ID logs database % full threshold value for alarm generation"}, "iptag"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "IP-TAG logs database % full threshold value for alarm generation"}, "auth"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "authentication logs database % full threshold value for alarm generation"}, "gtp"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "tunnel and gtp logs database % full threshold value for alarm generation"}, "sctp"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "SCTP logs database % full threshold value for alarm generation"}, "globalprotect"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "Globalprotect logs database % full threshold value for alarm generation"}, "decryption"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"90", "help-string"=> "decryption logs database % full threshold value for alarm generation"}} # traffic logs database % full threshold value for alarm generation def traffic prop_get('traffic') end # traffic logs database % full threshold value for alarm generation def traffic=(val) prop_set('traffic', val) end # threat logs database % full threshold value for alarm generation def threat prop_get('threat') end # threat logs database % full threshold value for alarm generation def threat=(val) prop_set('threat', val) end # configuration logs database % full threshold value for alarm generation def config prop_get('config') end # configuration logs database % full threshold value for alarm generation def config=(val) prop_set('config', val) end # system logs database % full threshold value for alarm generation def system prop_get('system') end # system logs database % full threshold value for alarm generation def system=(val) prop_set('system', val) end # alarm logs database % full threshold value for alarm generation def alarm prop_get('alarm') end # alarm logs database % full threshold value for alarm generation def alarm=(val) prop_set('alarm', val) end # hipmatch logs database % full threshold value for alarm generation def hipmatch prop_get('hipmatch') end # hipmatch logs database % full threshold value for alarm generation def hipmatch=(val) prop_set('hipmatch', val) end # User-ID logs database % full threshold value for alarm generation def userid prop_get('userid') end # User-ID logs database % full threshold value for alarm generation def userid=(val) prop_set('userid', val) end # IP-TAG logs database % full threshold value for alarm generation def iptag prop_get('iptag') end # IP-TAG logs database % full threshold value for alarm generation def iptag=(val) prop_set('iptag', val) end # authentication logs database % full threshold value for alarm generation def auth prop_get('auth') end # authentication logs database % full threshold value for alarm generation def auth=(val) prop_set('auth', val) end # tunnel and gtp logs database % full threshold value for alarm generation def gtp prop_get('gtp') end # tunnel and gtp logs database % full threshold value for alarm generation def gtp=(val) prop_set('gtp', val) end # SCTP logs database % full threshold value for alarm generation def sctp prop_get('sctp') end # SCTP logs database % full threshold value for alarm generation def sctp=(val) prop_set('sctp', val) end # Globalprotect logs database % full threshold value for alarm generation def globalprotect prop_get('globalprotect') end # Globalprotect logs database % full threshold value for alarm generation def globalprotect=(val) prop_set('globalprotect', val) end # decryption logs database % full threshold value for alarm generation def decryption prop_get('decryption') end # decryption logs database % full threshold value for alarm generation def decryption=(val) prop_set('decryption', val) end end # class LogDatabasesAlarmThreshold def log_databases_alarm_threshold @subclasses['log-databases-alarm-threshold'] ||= LogDatabasesAlarmThreshold.new(parent_instance: self, create_children: @create_children) end @props={"enable-alarm-generation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable CC alarms generation"}, "enable-cli-alarm-notification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable alarms notification on admin console"}, "enable-web-alarm-notification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable alarms notification on Web"}, "enable-audible-alarms"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable audio sound for alarms"}, "encrypt-decrypt-fail-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=> "Encryption/Decryption failure count notification threshold"}} # Enable CC alarms generation def enable_alarm_generation prop_get('enable-alarm-generation') end # Enable CC alarms generation def enable_alarm_generation=(val) prop_set('enable-alarm-generation', val) end # Enable alarms notification on admin console def enable_cli_alarm_notification prop_get('enable-cli-alarm-notification') end # Enable alarms notification on admin console def enable_cli_alarm_notification=(val) prop_set('enable-cli-alarm-notification', val) end # Enable alarms notification on Web def enable_web_alarm_notification prop_get('enable-web-alarm-notification') end # Enable alarms notification on Web def enable_web_alarm_notification=(val) prop_set('enable-web-alarm-notification', val) end # Enable audio sound for alarms def enable_audible_alarms prop_get('enable-audible-alarms') end # Enable audio sound for alarms def enable_audible_alarms=(val) prop_set('enable-audible-alarms', val) end # Encryption/Decryption failure count notification threshold def encrypt_decrypt_fail_count prop_get('encrypt-decrypt-fail-count') end # Encryption/Decryption failure count notification threshold def encrypt_decrypt_fail_count=(val) prop_set('encrypt-decrypt-fail-count', val) end end # class CommonCriteriaAlarmGeneration def common_criteria_alarm_generation @subclasses['common-criteria-alarm-generation'] ||= CommonCriteriaAlarmGeneration.new(parent_instance: self, create_children: @create_children) end class Initcfg < ConfigClass def has_multiple_values? false end def _section :'initcfg' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={"send-hostname"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "send-client-id"=>{"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-hostname"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}, "accept-dhcp-domain"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no"}} def send_hostname prop_get('send-hostname') end def send_hostname=(val) prop_set('send-hostname', val) end def send_client_id prop_get('send-client-id') end def send_client_id=(val) prop_set('send-client-id', val) end def accept_dhcp_hostname prop_get('accept-dhcp-hostname') end def accept_dhcp_hostname=(val) prop_set('accept-dhcp-hostname', val) end def accept_dhcp_domain prop_get('accept-dhcp-domain') end def accept_dhcp_domain=(val) prop_set('accept-dhcp-domain', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "dns-primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "dns-secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes"}, "auth-key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string"}, "dgname"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "cgname"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "certificate"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "certpassphrase"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "certkeyfile"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "username"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "userpassword"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "tplname"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}, "agent-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "hostInfo-agentId"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "hostInfo-hostName"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "public-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"(([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?){1}", "maxlen"=>"2048"}, "op-command-modes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64"}, "vm-auth-key"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"string"}} def ip_address prop_get('ip-address') end def ip_address=(val) prop_set('ip-address', val) end def netmask prop_get('netmask') end def netmask=(val) prop_set('netmask', val) end def default_gateway prop_get('default-gateway') end def default_gateway=(val) prop_set('default-gateway', val) end def panorama_server prop_get('panorama-server') end def panorama_server=(val) prop_set('panorama-server', val) end def panorama_server_2 prop_get('panorama-server-2') end def panorama_server_2=(val) prop_set('panorama-server-2', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def dns_primary prop_get('dns-primary') end def dns_primary=(val) prop_set('dns-primary', val) end def dns_secondary prop_get('dns-secondary') end def dns_secondary=(val) prop_set('dns-secondary', val) end def ipv6_address prop_get('ipv6-address') end def ipv6_address=(val) prop_set('ipv6-address', val) end def ipv6_default_gateway prop_get('ipv6-default-gateway') end def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def auth_key prop_get('auth-key') end def auth_key=(val) prop_set('auth-key', val) end def dgname prop_get('dgname') end def dgname=(val) prop_set('dgname', val) end def cgname prop_get('cgname') end def cgname=(val) prop_set('cgname', val) end def certificate prop_get('certificate') end def certificate=(val) prop_set('certificate', val) end def certpassphrase prop_get('certpassphrase') end def certpassphrase=(val) prop_set('certpassphrase', val) end def certkeyfile prop_get('certkeyfile') end def certkeyfile=(val) prop_set('certkeyfile', val) end def username prop_get('username') end def username=(val) prop_set('username', val) end def userpassword prop_get('userpassword') end def userpassword=(val) prop_set('userpassword', val) end def tplname prop_get('tplname') end def tplname=(val) prop_set('tplname', val) end def agent_name prop_get('agent-name') end def agent_name=(val) prop_set('agent-name', val) end def hostInfo_agentId prop_get('hostInfo-agentId') end def hostInfo_agentId=(val) prop_set('hostInfo-agentId', val) end def hostInfo_hostName prop_get('hostInfo-hostName') end def hostInfo_hostName=(val) prop_set('hostInfo-hostName', val) end def public_key prop_get('public-key') end def public_key=(val) prop_set('public-key', val) end def op_command_modes prop_get('op-command-modes') end def op_command_modes=(val) prop_set('op-command-modes', val) end def vm_auth_key prop_get('vm-auth-key') end def vm_auth_key=(val) prop_set('vm-auth-key', val) end end # class Initcfg def initcfg @subclasses['initcfg'] ||= Initcfg.new(parent_instance: self, create_children: @create_children) end @props={"idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"default administrative session idle timeout in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"1440", "help-string"=>"minutes"}, "enum"=>[{"value"=>"0", "help-string"=>"never timeout"}]}}, "appusage-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"60", "max"=>"365", "help-string"=>"application usage data storage time in days"}, "hostname-type-in-syslog"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"FQDN", "help-string"=>"Choose type to send in hostname field in syslog header", "enum"=> [{"value"=>"none", "help-string"=>"Do not send hostname in syslog header"}, {"value"=>"FQDN", "help-string"=>"Send FQDN field in header"}, {"value"=>"hostname", "help-string"=> "Send hostname in header if available otherwise send '-' "}, {"value"=>"ipv4-address", "help-string"=> "Send IPv4 address in header if available otherwise send '-'"}, {"value"=>"ipv6-address", "help-string"=> "Send IPv6 address in header if available otherwise send '-'"}]}, "report-run-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):00", "minlen"=>"5", "maxlen"=>"5", "default"=>"02:00", "help-string"=> "Time of day to run the scheduled reports hh:mm (e.g. 23:00)"}, "report-expiration-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"Expiration-period for reports (in days)"}, "threat-vault-access"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn threat-vault access on or off"}, "support-utf8-for-log-output"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Support output log in UTF-8"}, "auto-acquire-commit-lock"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Automatically add a commit lock when modifying configuration"}, "disable-commit-recovery"=> {"node-type"=>"element", "default"=>"no", "optional"=>"yes", "type"=>"bool", "help-string"=>"Disable automated commit recovery feature"}, "commit-recovery-retry"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"1", "help-string"=>"Set number of attempts allowed for checking connectivity"}, "commit-recovery-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"30", "default"=>"10", "help-string"=>"Set a timeout interval between retries"}, "rule-hit-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/Disable Policy rule hit-count feature"}, "rule-require-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require Tag on policies"}, "rule-require-description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require description on policies"}, "rule-fail-commit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Fail commit if policies have no tag/description"}, "rule-require-audit-comment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Require audit comment on policies"}, "rule-audit-comment-regex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"Audit Comment Regular Expression"}, "appusage-policy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable/Disable Policy Application usage feature", "prune-on-sdb"=>"cfg.vm-license-type=vm50l"}, "canonicalize-block-allow-list"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable/Disable canonicalization before matching url to block/allow list"}, "enable-high-speed-log-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Enable higher forwarding speeds when logs are being forwarding"}, "traffic-stop-on-logdb-full"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Stop traffic if logdb is full with unexported logs"}, "enable-log-high-dp-load"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Issue a progressive system log if one or more dataplane CPUs are under severe load"}, "enable-certificate-expiration-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Check for expired certificates and stop using them"}, "max-rows-in-csv-export"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"65535", "help-string"=>"maximum number of rows in exported csv files"}, "max-rows-in-pdf-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"5000", "help-string"=>"maximum number of rows in user activity report"}, "max-audit-versions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1048576", "default"=>"100", "help-string"=>"maximum number of audited versions of config to preserve"}, "panorama-tcp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"240", "help-string"=>"Receive timeout for TCP connection to Panorama"}, "panorama-tcp-send-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"240", "help-string"=>"Send timeout for TCP connection to Panorama"}, "panorama-ssl-send-retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "help-string"=>"Retry count for SSL sends to Panorama"}} # default administrative session idle timeout in minutes def idle_timeout prop_get('idle-timeout') end # default administrative session idle timeout in minutes def idle_timeout=(val) prop_set('idle-timeout', val) end # application usage data storage time in days def appusage_lifetime prop_get('appusage-lifetime') end # application usage data storage time in days def appusage_lifetime=(val) prop_set('appusage-lifetime', val) end # Choose type to send in hostname field in syslog header def hostname_type_in_syslog prop_get('hostname-type-in-syslog') end # Choose type to send in hostname field in syslog header def hostname_type_in_syslog=(val) prop_set('hostname-type-in-syslog', val) end # Time of day to run the scheduled reports hh:mm (e.g. 23:00) def report_run_time prop_get('report-run-time') end # Time of day to run the scheduled reports hh:mm (e.g. 23:00) def report_run_time=(val) prop_set('report-run-time', val) end # Expiration-period for reports (in days) def report_expiration_period prop_get('report-expiration-period') end # Expiration-period for reports (in days) def report_expiration_period=(val) prop_set('report-expiration-period', val) end # Turn threat-vault access on or off def threat_vault_access prop_get('threat-vault-access') end # Turn threat-vault access on or off def threat_vault_access=(val) prop_set('threat-vault-access', val) end # Support output log in UTF-8 def support_utf8_for_log_output prop_get('support-utf8-for-log-output') end # Support output log in UTF-8 def support_utf8_for_log_output=(val) prop_set('support-utf8-for-log-output', val) end # Automatically add a commit lock when modifying configuration def auto_acquire_commit_lock prop_get('auto-acquire-commit-lock') end # Automatically add a commit lock when modifying configuration def auto_acquire_commit_lock=(val) prop_set('auto-acquire-commit-lock', val) end # Disable automated commit recovery feature def disable_commit_recovery prop_get('disable-commit-recovery') end # Disable automated commit recovery feature def disable_commit_recovery=(val) prop_set('disable-commit-recovery', val) end # Set number of attempts allowed for checking connectivity def commit_recovery_retry prop_get('commit-recovery-retry') end # Set number of attempts allowed for checking connectivity def commit_recovery_retry=(val) prop_set('commit-recovery-retry', val) end # Set a timeout interval between retries def commit_recovery_timeout prop_get('commit-recovery-timeout') end # Set a timeout interval between retries def commit_recovery_timeout=(val) prop_set('commit-recovery-timeout', val) end # Enable/Disable Policy rule hit-count feature def rule_hit_count prop_get('rule-hit-count') end # Enable/Disable Policy rule hit-count feature def rule_hit_count=(val) prop_set('rule-hit-count', val) end # Require Tag on policies def rule_require_tag prop_get('rule-require-tag') end # Require Tag on policies def rule_require_tag=(val) prop_set('rule-require-tag', val) end # Require description on policies def rule_require_description prop_get('rule-require-description') end # Require description on policies def rule_require_description=(val) prop_set('rule-require-description', val) end # Fail commit if policies have no tag/description def rule_fail_commit prop_get('rule-fail-commit') end # Fail commit if policies have no tag/description def rule_fail_commit=(val) prop_set('rule-fail-commit', val) end # Require audit comment on policies def rule_require_audit_comment prop_get('rule-require-audit-comment') end # Require audit comment on policies def rule_require_audit_comment=(val) prop_set('rule-require-audit-comment', val) end # Audit Comment Regular Expression def rule_audit_comment_regex prop_get('rule-audit-comment-regex') end # Audit Comment Regular Expression def rule_audit_comment_regex=(val) prop_set('rule-audit-comment-regex', val) end # Enable/Disable Policy Application usage feature def appusage_policy prop_get('appusage-policy') end # Enable/Disable Policy Application usage feature def appusage_policy=(val) prop_set('appusage-policy', val) end # Enable/Disable canonicalization before matching url to block/allow list def canonicalize_block_allow_list prop_get('canonicalize-block-allow-list') end # Enable/Disable canonicalization before matching url to block/allow list def canonicalize_block_allow_list=(val) prop_set('canonicalize-block-allow-list', val) end # Enable higher forwarding speeds when logs are being forwarding def enable_high_speed_log_forwarding prop_get('enable-high-speed-log-forwarding') end # Enable higher forwarding speeds when logs are being forwarding def enable_high_speed_log_forwarding=(val) prop_set('enable-high-speed-log-forwarding', val) end # Stop traffic if logdb is full with unexported logs def traffic_stop_on_logdb_full prop_get('traffic-stop-on-logdb-full') end # Stop traffic if logdb is full with unexported logs def traffic_stop_on_logdb_full=(val) prop_set('traffic-stop-on-logdb-full', val) end # Issue a progressive system log if one or more dataplane CPUs are under severe load def enable_log_high_dp_load prop_get('enable-log-high-dp-load') end # Issue a progressive system log if one or more dataplane CPUs are under severe load def enable_log_high_dp_load=(val) prop_set('enable-log-high-dp-load', val) end # Check for expired certificates and stop using them def enable_certificate_expiration_check prop_get('enable-certificate-expiration-check') end # Check for expired certificates and stop using them def enable_certificate_expiration_check=(val) prop_set('enable-certificate-expiration-check', val) end # maximum number of rows in exported csv files def max_rows_in_csv_export prop_get('max-rows-in-csv-export') end # maximum number of rows in exported csv files def max_rows_in_csv_export=(val) prop_set('max-rows-in-csv-export', val) end # maximum number of rows in user activity report def max_rows_in_pdf_report prop_get('max-rows-in-pdf-report') end # maximum number of rows in user activity report def max_rows_in_pdf_report=(val) prop_set('max-rows-in-pdf-report', val) end # maximum number of audited versions of config to preserve def max_audit_versions prop_get('max-audit-versions') end # maximum number of audited versions of config to preserve def max_audit_versions=(val) prop_set('max-audit-versions', val) end # Receive timeout for TCP connection to Panorama def panorama_tcp_receive_timeout prop_get('panorama-tcp-receive-timeout') end # Receive timeout for TCP connection to Panorama def panorama_tcp_receive_timeout=(val) prop_set('panorama-tcp-receive-timeout', val) end # Send timeout for TCP connection to Panorama def panorama_tcp_send_timeout prop_get('panorama-tcp-send-timeout') end # Send timeout for TCP connection to Panorama def panorama_tcp_send_timeout=(val) prop_set('panorama-tcp-send-timeout', val) end # Retry count for SSL sends to Panorama def panorama_ssl_send_retries prop_get('panorama-ssl-send-retries') end # Retry count for SSL sends to Panorama def panorama_ssl_send_retries=(val) prop_set('panorama-ssl-send-retries', val) end end # class Management def management @subclasses['management'] ||= Management.new(parent_instance: self, create_children: @create_children) end class Logrcvr < ConfigClass def has_multiple_values? false end def _section :'logrcvr' end @props={"container-page-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Container page timeout in secs"}} # Container page timeout in secs def container_page_timeout prop_get('container-page-timeout') end # Container page timeout in secs def container_page_timeout=(val) prop_set('container-page-timeout', val) end end # class Logrcvr def logrcvr @subclasses['logrcvr'] ||= Logrcvr.new(parent_instance: self, create_children: @create_children) end class Vpn < ConfigClass def has_multiple_values? false end def _section :'vpn' end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end @props={"cookie-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"0", "max"=>"65535", "help-string"=> "Enable cookie if the number of half opened SA is over the threshold"}, "max-half-opened-sa"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"65535", "min"=>"1", "max"=>"65535", "help-string"=>"Maximum number of half opened SA"}, "certificate-cache-size"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"500", "min"=>"0", "max"=>"4000", "help-string"=> "Maximum number of certificates in cache used for http peer certificates"}} # Enable cookie if the number of half opened SA is over the threshold def cookie_threshold prop_get('cookie-threshold') end # Enable cookie if the number of half opened SA is over the threshold def cookie_threshold=(val) prop_set('cookie-threshold', val) end # Maximum number of half opened SA def max_half_opened_sa prop_get('max-half-opened-sa') end # Maximum number of half opened SA def max_half_opened_sa=(val) prop_set('max-half-opened-sa', val) end # Maximum number of certificates in cache used for http peer certificates def certificate_cache_size prop_get('certificate-cache-size') end # Maximum number of certificates in cache used for http peer certificates def certificate_cache_size=(val) prop_set('certificate-cache-size', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Vpn def vpn @subclasses['vpn'] ||= Vpn.new(parent_instance: self, create_children: @create_children) end class CustomLogo < ConfigClass def has_multiple_values? false end def _section :'custom-logo' end class LoginScreen < ConfigClass def has_multiple_values? false end def _section :'login-screen' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom login-screen page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom login-screen page(base64 encoded). def content prop_get('content') end # Upload custom login-screen page(base64 encoded). def content=(val) prop_set('content', val) end end # class LoginScreen def login_screen @subclasses['login-screen'] ||= LoginScreen.new(parent_instance: self, create_children: @create_children) end class MainUi < ConfigClass def has_multiple_values? false end def _section :'main-ui' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom main-ui page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom main-ui page(base64 encoded). def content prop_get('content') end # Upload custom main-ui page(base64 encoded). def content=(val) prop_set('content', val) end end # class MainUi def main_ui @subclasses['main-ui'] ||= MainUi.new(parent_instance: self, create_children: @create_children) end class PdfReportHeader < ConfigClass def has_multiple_values? false end def _section :'pdf-report-header' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom pdf-report-header page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom pdf-report-header page(base64 encoded). def content prop_get('content') end # Upload custom pdf-report-header page(base64 encoded). def content=(val) prop_set('content', val) end end # class PdfReportHeader def pdf_report_header @subclasses['pdf-report-header'] ||= PdfReportHeader.new(parent_instance: self, create_children: @create_children) end class PdfReportFooter < ConfigClass def has_multiple_values? false end def _section :'pdf-report-footer' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"256", "help-string"=>"File name"}, "content"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"base64", "maxlen"=>"500000", "help-string"=>"Upload custom pdf-report-footer page(base64 encoded)."}} # File name def name prop_get('name') end # File name def name=(val) prop_set('name', val) end # Upload custom pdf-report-footer page(base64 encoded). def content prop_get('content') end # Upload custom pdf-report-footer page(base64 encoded). def content=(val) prop_set('content', val) end end # class PdfReportFooter def pdf_report_footer @subclasses['pdf-report-footer'] ||= PdfReportFooter.new(parent_instance: self, create_children: @create_children) end @props={"hide-panorama-header-background"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def hide_panorama_header_background prop_get('hide-panorama-header-background') end def hide_panorama_header_background=(val) prop_set('hide-panorama-header-background', val) end end # class CustomLogo def custom_logo @subclasses['custom-logo'] ||= CustomLogo.new(parent_instance: self, create_children: @create_children) end class Iot < ConfigClass def has_multiple_values? false end def _section :'iot' end class Edge < ConfigClass def has_multiple_values? false end def _section :'edge' end @props={"disable-device-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the edge cloud service", "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name"}}}} def disable_device_cert prop_get('disable-device-cert') end def disable_device_cert=(val) prop_set('disable-device-cert', val) end # IP address or hostname for the edge cloud service def address prop_get('address') end # IP address or hostname for the edge cloud service def address=(val) prop_set('address', val) end end # class Edge def edge @subclasses['edge'] ||= Edge.new(parent_instance: self, create_children: @create_children) end @props={} end # class Iot def iot @subclasses['iot'] ||= Iot.new(parent_instance: self, create_children: @create_children) end @props={"auto-mac-detect"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.setting.auto-mac-detect-disable=True", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Using detected VM interface MAC as PANOS interface MAC"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mobile-security-policy"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "tunnel-acceleration"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"to accelerate GTP-U, GRE and VxLAN traffic"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "advance-routing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable Advanced Routing Module"}} # Using detected VM interface MAC as PANOS interface MAC def auto_mac_detect prop_get('auto-mac-detect') end # Using detected VM interface MAC as PANOS interface MAC def auto_mac_detect=(val) prop_set('auto-mac-detect', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def mobile_security_policy prop_get('mobile-security-policy') end def mobile_security_policy=(val) prop_set('mobile-security-policy', val) end # to accelerate GTP-U, GRE and VxLAN traffic def tunnel_acceleration prop_get('tunnel-acceleration') end # to accelerate GTP-U, GRE and VxLAN traffic def tunnel_acceleration=(val) prop_set('tunnel-acceleration', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end # Enable Advanced Routing Module def advance_routing prop_get('advance-routing') end # Enable Advanced Routing Module def advance_routing=(val) prop_set('advance-routing', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end class Interface < ConfigClass def has_multiple_values? false end def _section :'interface' end class Ha1 < ConfigClass def has_multiple_values? false end def _section :'ha1' end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Interface name", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=> {"prune-on-sdb"=> "cfg.platform.vm.high-availability.interface.ha1.port-disable=True"}, "enum"=> [{"value"=>"dedicated-ha1", "help-string"=>"Dedicated out of band HA1 interface for ha1"}, {"value"=>"ha1-a", "help-string"=>"Dedicated out of band HA1-A interface for ha1"}, {"value"=>"ha1-b", "help-string"=>"Dedicated out of band HA1-B interface for ha1"}, {"value"=>"aux-1", "help-string"=>"Non-dedicated out of band AUX-1 interface for ha1"}, {"value"=>"aux-2", "help-string"=>"Non-dedicated out of band AUX-2 interface for ha1"}, {"value"=>"management", "help-string"=>"Non-dedicated out of band MGT interface for ha1"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA1 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA1 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA1 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "monitor-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"3000", "help-string"=> "hold time in milliseconds to allow ha1 link flapping, default 3000"}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA1 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA1 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA1 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA1 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA1 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA1 interface def gateway=(val) prop_set('gateway', val) end # hold time in milliseconds to allow ha1 link flapping, default 3000 def monitor_hold_time prop_get('monitor-hold-time') end # hold time in milliseconds to allow ha1 link flapping, default 3000 def monitor_hold_time=(val) prop_set('monitor-hold-time', val) end end # class Ha1 def ha1 @subclasses['ha1'] ||= Ha1.new(parent_instance: self, create_children: @create_children) end class Ha1Backup < ConfigClass def has_multiple_values? false end def _section :'ha1-backup' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"dedicated-ha1", "help-string"=>"Dedicated out of band HA1 interface for ha1-backup"}, {"value"=>"ha1-a", "help-string"=>"Dedicated out of band HA1-A interface for ha1-backup"}, {"value"=>"ha1-b", "help-string"=>"Dedicated out of band HA1-B interface for ha1-backup"}, {"value"=>"aux-1", "help-string"=> "Non-dedicated out of band AUX-1 interface for ha1-backup"}, {"value"=>"aux-2", "help-string"=> "Non-dedicated out of band AUX-2 interface for ha1-backup"}, {"value"=>"management", "help-string"=> "Non-dedicated out of band MGT interface for ha1-backup"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA1 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA1 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA1 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA1 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA1 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA1 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA1 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA1 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA1 interface def gateway=(val) prop_set('gateway', val) end end # class Ha1Backup def ha1_backup @subclasses['ha1-backup'] ||= Ha1Backup.new(parent_instance: self, create_children: @create_children) end class Ha2 < ConfigClass def has_multiple_values? false end def _section :'ha2' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"dedicated-ha2", "help-string"=>"Dedicated HA2 interface"}, {"value"=>"hsci", "help-string"=> "High Speed Chassis Interconnect (HSCI) dedicated for HA2 and HA3 interfaces"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA2 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA2 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA2 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA2 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA2 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA2 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA2 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA2 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA2 interface def gateway=(val) prop_set('gateway', val) end end # class Ha2 def ha2 @subclasses['ha2'] ||= Ha2.new(parent_instance: self, create_children: @create_children) end class Ha2Backup < ConfigClass def has_multiple_values? false end def _section :'ha2-backup' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"dedicated-ha2", "help-string"=>"Dedicated HA2 interface"}, {"value"=>"hsci", "help-string"=> "High Speed Chassis Interconnect (HSCI) dedicated for HA2 and HA3 interfaces"}]}}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"10", "help-string"=>"10Mbps"}, {"value"=>"100", "help-string"=>"100Mbps"}, {"value"=>"1000", "help-string"=>"1000Mbps"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Interface link duplex", "enum"=> [{"value"=>"auto", "help-string"=>"Auto negotiation"}, {"value"=>"full", "help-string"=>"Full duplex"}, {"value"=>"half", "help-string"=>"Half duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA2 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA2 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 Gateway for the HA2 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # IPv4/IPv6 address for the HA2 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA2 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA2 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA2 interface def netmask=(val) prop_set('netmask', val) end # IPv4/IPv6 Gateway for the HA2 interface def gateway prop_get('gateway') end # IPv4/IPv6 Gateway for the HA2 interface def gateway=(val) prop_set('gateway', val) end end # class Ha2Backup def ha2_backup @subclasses['ha2-backup'] ||= Ha2Backup.new(parent_instance: self, create_children: @create_children) end class Ha3 < ConfigClass def has_multiple_values? false end def _section :'ha3' end @props={"port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[ha]/@name", "#myentry(template-stack)/variable/entry[type/interface]/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"hsci", "help-string"=> "High Speed Chassis Interconnect (HSCI) dedicated for HA2 and HA3 interfaces"}]}}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end end # class Ha3 def ha3 @subclasses['ha3'] ||= Ha3.new(parent_instance: self, create_children: @create_children) end class Ha4 < ConfigClass def has_multiple_values? false end def _section :'ha4' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[ha]/@name", "#myentry(template-stack)/variable/entry[type/interface]/@name"], "multi-types"=>{"string"=>{}}}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA4 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "help-string"=>"IPv4 netmask for the HA4 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # IPv4/IPv6 address for the HA4 interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA4 interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA4 interface def netmask prop_get('netmask') end # IPv4 netmask for the HA4 interface def netmask=(val) prop_set('netmask', val) end end # class Ha4 def ha4 @subclasses['ha4'] ||= Ha4.new(parent_instance: self, create_children: @create_children) end class Ha4Backup < ConfigClass def has_multiple_values? false end def _section :'ha4-backup' end @props={"port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[ha]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[ha]/@name", "#myentry(template-stack)/variable/entry[type/interface]/@name"], "multi-types"=>{"string"=>{}}}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the HA4-backup interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IPv4 netmask for the HA4-backup interface"}} # Interface name def port prop_get('port') end # Interface name def port=(val) prop_set('port', val) end # IPv4/IPv6 address for the HA4-backup interface def ip_address prop_get('ip-address') end # IPv4/IPv6 address for the HA4-backup interface def ip_address=(val) prop_set('ip-address', val) end # IPv4 netmask for the HA4-backup interface def netmask prop_get('netmask') end # IPv4 netmask for the HA4-backup interface def netmask=(val) prop_set('netmask', val) end end # class Ha4Backup def ha4_backup @subclasses['ha4-backup'] ||= Ha4Backup.new(parent_instance: self, create_children: @create_children) end @props={} end # class Interface def interface @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) end class Cluster < ConfigClass def has_multiple_values? false end def _section :'cluster' end class ClusterMembers < XML::ConfigClass def has_multiple_values? true end def _section :'cluster-members' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "help-string"=>"Member device serial number"}, "ha4-ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/IPv6 address for the cluster member HA4 interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "ha4-backup-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=> "IPv4/IPv6 address for the cluster member HA4-backup interface", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "session-synchronization"=> {"node-type"=>"element", "type"=>"enum", "default"=>"enabled", "optional"=>"yes", "help-string"=> "Enable/disable session synchronization from current device to given member", "enum"=> [{"value"=>"enabled", "help-string"=>"Enable cluster session synchronization"}, {"value"=>"disabled", "help-string"=>"Disable cluster session synchronization"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"Provide cluster member specific comments"}} # Member device serial number def name prop_get('@name') end # IPv4/IPv6 address for the cluster member HA4 interface def ha4_ip_address prop_get('ha4-ip-address') end # IPv4/IPv6 address for the cluster member HA4 interface def ha4_ip_address=(val) prop_set('ha4-ip-address', val) end # IPv4/IPv6 address for the cluster member HA4-backup interface def ha4_backup_ip_address prop_get('ha4-backup-ip-address') end # IPv4/IPv6 address for the cluster member HA4-backup interface def ha4_backup_ip_address=(val) prop_set('ha4-backup-ip-address', val) end # Enable/disable session synchronization from current device to given member def session_synchronization prop_get('session-synchronization') end # Enable/disable session synchronization from current device to given member def session_synchronization=(val) prop_set('session-synchronization', val) end # Provide cluster member specific comments def comments prop_get('comments') end # Provide cluster member specific comments def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClusterMembers def cluster_members if @create_children @subclasses['cluster-members'] ||= ClusterMembers.new(parent_instance: self, create_children: @create_children) else ClusterMembers.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable/disable cluster participation"}, "cluster-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ID to identify members of same cluster", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/group-id]/@name"], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"99"}, "string"=>{"maxlen"=>"63"}}}, "cluster-synchronization-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"30", "default"=>"0", "help-string"=> "Cluster synchronization completion wait timeout in minutes (default 0 minutes)"}, "cluster-keepalive-threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5000", "max"=>"60000", "default"=>"10000", "help-string"=> "Interval in milliseconds to wait before declaring keep-alive failure (default 10000 milliseconds)"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"128", "help-string"=>"Cluster description"}, "suspend-on-slot-failure"=> {"node-type"=>"element", "type"=>"enum", "default"=>"disabled", "optional"=>"yes", "help-string"=> "Determine if HA cluster should be suspended on any slot failure.", "enum"=> [{"value"=>"enabled", "help-string"=>"Suspend HA cluster on any slot failure"}, {"value"=>"disabled", "help-string"=> "Best effort to keep cluster functional on slot failure"}]}, "monitor-fail-hold-down-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in cluster-non-functional or ha-non-functional state following a link/path monitor failure, default 1"}} # Enable/disable cluster participation def enabled prop_get('enabled') end # Enable/disable cluster participation def enabled=(val) prop_set('enabled', val) end # ID to identify members of same cluster def cluster_id prop_get('cluster-id') end # ID to identify members of same cluster def cluster_id=(val) prop_set('cluster-id', val) end # Cluster synchronization completion wait timeout in minutes (default 0 minutes) def cluster_synchronization_timeout prop_get('cluster-synchronization-timeout') end # Cluster synchronization completion wait timeout in minutes (default 0 minutes) def cluster_synchronization_timeout=(val) prop_set('cluster-synchronization-timeout', val) end # Interval in milliseconds to wait before declaring keep-alive failure (default 10000 milliseconds) def cluster_keepalive_threshold prop_get('cluster-keepalive-threshold') end # Interval in milliseconds to wait before declaring keep-alive failure (default 10000 milliseconds) def cluster_keepalive_threshold=(val) prop_set('cluster-keepalive-threshold', val) end # Cluster description def description prop_get('description') end # Cluster description def description=(val) prop_set('description', val) end # Determine if HA cluster should be suspended on any slot failure. def suspend_on_slot_failure prop_get('suspend-on-slot-failure') end # Determine if HA cluster should be suspended on any slot failure. def suspend_on_slot_failure=(val) prop_set('suspend-on-slot-failure', val) end # Interval in minutes to stay in cluster-non-functional or ha-non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time prop_get('monitor-fail-hold-down-time') end # Interval in minutes to stay in cluster-non-functional or ha-non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time=(val) prop_set('monitor-fail-hold-down-time', val) end end # class Cluster def cluster @subclasses['cluster'] ||= Cluster.new(parent_instance: self, create_children: @create_children) end class Group < ConfigClass def has_multiple_values? false end def _section :'group' end class ElectionOption < ConfigClass def has_multiple_values? false end def _section :'election-option' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end class Recommended < ConfigClass def has_multiple_values? false end def _section :'recommended' end @props={} end # class Recommended def recommended @subclasses['recommended'] ||= Recommended.new(parent_instance: self, create_children: @create_children) end class Aggressive < ConfigClass def has_multiple_values? false end def _section :'aggressive' end @props={} end # class Aggressive def aggressive @subclasses['aggressive'] ||= Aggressive.new(parent_instance: self, create_children: @create_children) end class Advanced < ConfigClass def has_multiple_values? false end def _section :'advanced' end @props={"promotion-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to state change from Passive to Active or Active-Secondary to Active-Primary, default 2000"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"8000", "max"=>"60000", "default"=>"8000", "help-string"=> "Interval in milliseconds to send Hello messages, default 8000"}, "heartbeat-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to send Heartbeat pings, default 2000"}, "flap-max"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"3", "help-string"=> "Flaps before entering suspended state min=disable, max=infinite default =3", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"16", "default"=>"3"}, "enum"=> [{"value"=>"infinite", "help-string"=>"Keep flapping infinitely"}, {"value"=>"disable", "help-string"=>"Directly go to suspended state"}]}}, "preemption-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay Passive before preempting Active device or to stay Active-Secondary before preempting Active-Primary device, default 1"}, "monitor-fail-hold-up-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"0", "help-string"=> "Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0"}, "additional-master-hold-up-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"500", "help-string"=> "Interval in milliseconds to wait before honoring a path or link monitor failure on the Active or Active-Primary device, default 500"}} # Interval in milliseconds to state change from Passive to Active or Active-Secondary to Active-Primary, default 2000 def promotion_hold_time prop_get('promotion-hold-time') end # Interval in milliseconds to state change from Passive to Active or Active-Secondary to Active-Primary, default 2000 def promotion_hold_time=(val) prop_set('promotion-hold-time', val) end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval prop_get('hello-interval') end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval=(val) prop_set('hello-interval', val) end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval prop_get('heartbeat-interval') end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval=(val) prop_set('heartbeat-interval', val) end # Flaps before entering suspended state min=disable, max=infinite default =3 def flap_max prop_get('flap-max') end # Flaps before entering suspended state min=disable, max=infinite default =3 def flap_max=(val) prop_set('flap-max', val) end # Interval in minutes to stay Passive before preempting Active device or to stay Active-Secondary before preempting Active-Primary device, default 1 def preemption_hold_time prop_get('preemption-hold-time') end # Interval in minutes to stay Passive before preempting Active device or to stay Active-Secondary before preempting Active-Primary device, default 1 def preemption_hold_time=(val) prop_set('preemption-hold-time', val) end # Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0 def monitor_fail_hold_up_time prop_get('monitor-fail-hold-up-time') end # Interval in milliseconds to wait before honoring a path or link monitor failure on this device, default 0 def monitor_fail_hold_up_time=(val) prop_set('monitor-fail-hold-up-time', val) end # Interval in milliseconds to wait before honoring a path or link monitor failure on the Active or Active-Primary device, default 500 def additional_master_hold_up_time prop_get('additional-master-hold-up-time') end # Interval in milliseconds to wait before honoring a path or link monitor failure on the Active or Active-Primary device, default 500 def additional_master_hold_up_time=(val) prop_set('additional-master-hold-up-time', val) end end # class Advanced def advanced @subclasses['advanced'] ||= Advanced.new(parent_instance: self, create_children: @create_children) end @props={} end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end @props={"device-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"highest: 0, lowest: 255", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/device-priority]/@name"], "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"255"}, "string"=>{"maxlen"=>"63"}}}, "preemptive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Configure on both HA peers to allow preemption by Passive or Active-Secondary device based on device-priority, default no"}, "heartbeat-backup"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use management port as backup path for heartbeat messages"}} # highest: 0, lowest: 255 def device_priority prop_get('device-priority') end # highest: 0, lowest: 255 def device_priority=(val) prop_set('device-priority', val) end # Configure on both HA peers to allow preemption by Passive or Active-Secondary device based on device-priority, default no def preemptive prop_get('preemptive') end # Configure on both HA peers to allow preemption by Passive or Active-Secondary device based on device-priority, default no def preemptive=(val) prop_set('preemptive', val) end # Use management port as backup path for heartbeat messages def heartbeat_backup prop_get('heartbeat-backup') end # Use management port as backup path for heartbeat messages def heartbeat_backup=(val) prop_set('heartbeat-backup', val) end end # class ElectionOption def election_option @subclasses['election-option'] ||= ElectionOption.new(parent_instance: self, create_children: @create_children) end class StateSynchronization < ConfigClass def has_multiple_values? false end def _section :'state-synchronization' end class Ha2KeepAlive < ConfigClass def has_multiple_values? false end def _section :'ha2-keep-alive' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable or disable feature"}, "action"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "optional"=>"yes", "type"=>"enum", "default"=>"log-only", "help-string"=>"System response on keep-alive failure", "enum"=> [{"value"=>"log-only", "help-string"=>"Log keep-alive failures only (default)"}, {"value"=>"split-datapath", "help-string"=>"Disable state-synchronization on failure"}]}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5000", "max"=>"60000", "default"=>"10000", "help-string"=> "Keep-alive failure duration in msecs before failure declared (default 10000 msecs)"}} # Enable or disable feature def enabled prop_get('enabled') end # Enable or disable feature def enabled=(val) prop_set('enabled', val) end # System response on keep-alive failure def action prop_get('action') end # System response on keep-alive failure def action=(val) prop_set('action', val) end # Keep-alive failure duration in msecs before failure declared (default 10000 msecs) def threshold prop_get('threshold') end # Keep-alive failure duration in msecs before failure declared (default 10000 msecs) def threshold=(val) prop_set('threshold', val) end end # class Ha2KeepAlive def ha2_keep_alive @subclasses['ha2-keep-alive'] ||= Ha2KeepAlive.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "transport"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ethernet", "help-string"=>"transport layer configuration", "enum"=> [{"value"=>"ethernet", "prune-on-sdb"=>"cfg.platform.vm.ha2-transport-eth-disable=True", "help-string"=>"Layer2 transport via Ethernet"}, {"value"=>"ip", "help-string"=>"Layer3 transport via IP protocol 99"}, {"value"=>"udp", "help-string"=>"Layer4 transport via UDP/29281"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # transport layer configuration def transport prop_get('transport') end # transport layer configuration def transport=(val) prop_set('transport', val) end end # class StateSynchronization def state_synchronization @subclasses['state-synchronization'] ||= StateSynchronization.new(parent_instance: self, create_children: @create_children) end class ConfigurationSynchronization < ConfigClass def has_multiple_values? false end def _section :'configuration-synchronization' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class ConfigurationSynchronization def configuration_synchronization @subclasses['configuration-synchronization'] ||= ConfigurationSynchronization.new(parent_instance: self, create_children: @create_children) end class Mode < ConfigClass def has_multiple_values? false end def _section :'mode' end class ActivePassive < ConfigClass def has_multiple_values? false end def _section :'active-passive' end @props={"passive-link-state"=> {"node-type"=>"element", "optional"=>"yes", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "default"=>"shutdown", "type"=>"enum", "help-string"=>"Link mode of data-plane interfaces while in Passive state", "enum"=> [{"value"=>"shutdown", "help-string"=>"Link put into powered off state"}, {"value"=>"auto", "help-string"=>"Link put into automatically configured mode"}]}, "monitor-fail-hold-down-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in non-functional state following a link/path monitor failure, default 1"}} # Link mode of data-plane interfaces while in Passive state def passive_link_state prop_get('passive-link-state') end # Link mode of data-plane interfaces while in Passive state def passive_link_state=(val) prop_set('passive-link-state', val) end # Interval in minutes to stay in non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time prop_get('monitor-fail-hold-down-time') end # Interval in minutes to stay in non-functional state following a link/path monitor failure, default 1 def monitor_fail_hold_down_time=(val) prop_set('monitor-fail-hold-down-time', val) end end # class ActivePassive def active_passive @subclasses['active-passive'] ||= ActivePassive.new(parent_instance: self, create_children: @create_children) end class ActiveActive < ConfigClass def has_multiple_values? false end def _section :'active-active' end class NetworkConfiguration < ConfigClass def has_multiple_values? false end def _section :'network-configuration' end class Sync < ConfigClass def has_multiple_values? false end def _section :'sync' end @props={"virtual-router"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Synchronize virtual router configuration"}, "logical-router"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Synchronize logical router configuration"}, "qos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Synchronize interface QoS configuration"}} # Synchronize virtual router configuration def virtual_router prop_get('virtual-router') end # Synchronize virtual router configuration def virtual_router=(val) prop_set('virtual-router', val) end # Synchronize logical router configuration def logical_router prop_get('logical-router') end # Synchronize logical router configuration def logical_router=(val) prop_set('logical-router', val) end # Synchronize interface QoS configuration def qos prop_get('qos') end # Synchronize interface QoS configuration def qos=(val) prop_set('qos', val) end end # class Sync def sync @subclasses['sync'] ||= Sync.new(parent_instance: self, create_children: @create_children) end @props={} end # class NetworkConfiguration def network_configuration @subclasses['network-configuration'] ||= NetworkConfiguration.new(parent_instance: self, create_children: @create_children) end class VirtualAddress < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Floating < ConfigClass def has_multiple_values? false end def _section :'floating' end class DevicePriority < ConfigClass def has_multiple_values? false end def _section :'device-priority' end @props={"device-0"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 0 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "device-1"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 1 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "failover-on-link-down"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Failover address if link state is down", "type"=>"bool", "default"=>"yes"}} # Device 0 priority, highest: 0, lowest: 255 def device_0 prop_get('device-0') end # Device 0 priority, highest: 0, lowest: 255 def device_0=(val) prop_set('device-0', val) end # Device 1 priority, highest: 0, lowest: 255 def device_1 prop_get('device-1') end # Device 1 priority, highest: 0, lowest: 255 def device_1=(val) prop_set('device-1', val) end # Failover address if link state is down def failover_on_link_down prop_get('failover-on-link-down') end # Failover address if link state is down def failover_on_link_down=(val) prop_set('failover-on-link-down', val) end end # class DevicePriority def device_priority @subclasses['device-priority'] ||= DevicePriority.new(parent_instance: self, create_children: @create_children) end @props={"bind-to-active-primary"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Floating IP bound to the Active-Primary device"}} # Floating IP bound to the Active-Primary device def bind_to_active_primary prop_get('bind-to-active-primary') end # Floating IP bound to the Active-Primary device def bind_to_active_primary=(val) prop_set('bind-to-active-primary', val) end end # class Floating def floating @subclasses['floating'] ||= Floating.new(parent_instance: self, create_children: @create_children) end class ArpLoadSharing < ConfigClass def has_multiple_values? false end def _section :'arp-load-sharing' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"User-specified hash seed"}} # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end @props={} end # class ArpLoadSharing def arp_load_sharing @subclasses['arp-load-sharing'] ||= ArpLoadSharing.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address or address object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ipv6' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Floating < ConfigClass def has_multiple_values? false end def _section :'floating' end class DevicePriority < ConfigClass def has_multiple_values? false end def _section :'device-priority' end @props={"device-0"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 0 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "device-1"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Device 1 priority, highest: 0, lowest: 255", "optional"=>"yes"}, "failover-on-link-down"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Failover address if link state is down", "type"=>"bool", "default"=>"yes"}} # Device 0 priority, highest: 0, lowest: 255 def device_0 prop_get('device-0') end # Device 0 priority, highest: 0, lowest: 255 def device_0=(val) prop_set('device-0', val) end # Device 1 priority, highest: 0, lowest: 255 def device_1 prop_get('device-1') end # Device 1 priority, highest: 0, lowest: 255 def device_1=(val) prop_set('device-1', val) end # Failover address if link state is down def failover_on_link_down prop_get('failover-on-link-down') end # Failover address if link state is down def failover_on_link_down=(val) prop_set('failover-on-link-down', val) end end # class DevicePriority def device_priority @subclasses['device-priority'] ||= DevicePriority.new(parent_instance: self, create_children: @create_children) end @props={"bind-to-active-primary"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Floating IP bound to the Active-Primary device"}} # Floating IP bound to the Active-Primary device def bind_to_active_primary prop_get('bind-to-active-primary') end # Floating IP bound to the Active-Primary device def bind_to_active_primary=(val) prop_set('bind-to-active-primary', val) end end # class Floating def floating @subclasses['floating'] ||= Floating.new(parent_instance: self, create_children: @create_children) end class ArpLoadSharing < ConfigClass def has_multiple_values? false end def _section :'arp-load-sharing' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"User-specified hash seed"}} # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end @props={} end # class ArpLoadSharing def arp_load_sharing @subclasses['arp-load-sharing'] ||= ArpLoadSharing.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IPv6 address or address object def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ipv6 def ipv6 if @create_children @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) else Ipv6.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Layer3 interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/logical-router/entry/vrf/entry/interface/member", "#myentry(devices)/network/virtual-router/entry/interface/member"]}} # Layer3 interface name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualAddress def virtual_address if @create_children @subclasses['virtual-address'] ||= VirtualAddress.new(parent_instance: self, create_children: @create_children) else VirtualAddress.new(parent_instance: self) end end class SessionOwnerSelection < ConfigClass def has_multiple_values? false end def _section :'session-owner-selection' end class PrimaryDevice < ConfigClass def has_multiple_values? false end def _section :'primary-device' end @props={} end # class PrimaryDevice def primary_device @subclasses['primary-device'] ||= PrimaryDevice.new(parent_instance: self, create_children: @create_children) end class FirstPacket < ConfigClass def has_multiple_values? false end def _section :'first-packet' end class SessionSetup < ConfigClass def has_multiple_values? false end def _section :'session-setup' end class PrimaryDevice < ConfigClass def has_multiple_values? false end def _section :'primary-device' end @props={} end # class PrimaryDevice def primary_device @subclasses['primary-device'] ||= PrimaryDevice.new(parent_instance: self, create_children: @create_children) end class FirstPacket < ConfigClass def has_multiple_values? false end def _section :'first-packet' end @props={} end # class FirstPacket def first_packet @subclasses['first-packet'] ||= FirstPacket.new(parent_instance: self, create_children: @create_children) end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"hash-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"source-and-destination", "help-string"=>"Address(es) to use as hash key", "enum"=> [{"value"=>"source", "help-string"=>"Source address only"}, {"value"=>"source-and-destination", "help-string"=>"Source and destination addresses"}]}, "hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"0", "help-string"=>"User-specified hash seed"}} # Address(es) to use as hash key def hash_key prop_get('hash-key') end # Address(es) to use as hash key def hash_key=(val) prop_set('hash-key', val) end # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end @props={} end # class SessionSetup def session_setup @subclasses['session-setup'] ||= SessionSetup.new(parent_instance: self, create_children: @create_children) end @props={} end # class FirstPacket def first_packet @subclasses['first-packet'] ||= FirstPacket.new(parent_instance: self, create_children: @create_children) end @props={} end # class SessionOwnerSelection def session_owner_selection @subclasses['session-owner-selection'] ||= SessionOwnerSelection.new(parent_instance: self, create_children: @create_children) end @props={"device-id"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Device ID in HA group, 0 or 1 or variable", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/device-id]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"0", "help-string"=>"Higher priority device"}, {"value"=>"1", "help-string"=>"Lower priority device"}]}}, "tentative-hold-time"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"60", "help-string"=> "Interval in seconds to stay in Tentative state following a link/path monitor recovery or before moving to an Active state, default 60 secs", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"600", "help-string"=>"Interval in seconds"}, "enum"=> [{"value"=>"disabled", "help-string"=>"disable tentative-hold-time functionality"}]}}} # Device ID in HA group, 0 or 1 or variable def device_id prop_get('device-id') end # Device ID in HA group, 0 or 1 or variable def device_id=(val) prop_set('device-id', val) end # Interval in seconds to stay in Tentative state following a link/path monitor recovery or before moving to an Active state, default 60 secs def tentative_hold_time prop_get('tentative-hold-time') end # Interval in seconds to stay in Tentative state following a link/path monitor recovery or before moving to an Active state, default 60 secs def tentative_hold_time=(val) prop_set('tentative-hold-time', val) end end # class ActiveActive def active_active @subclasses['active-active'] ||= ActiveActive.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) end class Monitoring < ConfigClass def has_multiple_values? false end def _section :'monitoring' end class PathMonitoring < ConfigClass def has_multiple_values? false end def _section :'path-monitoring' end class PathGroup < ConfigClass def has_multiple_values? false end def _section :'path-group' end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-wire/entry/@name"]}, "source-ip"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Source IPv4/6 address to send monitoring packet"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end # Source IPv4/6 address to send monitoring packet def source_ip prop_get('source-ip') end # Source IPv4/6 address to send monitoring packet def source_ip=(val) prop_set('source-ip', val) end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class Vlan < XML::ConfigClass def has_multiple_values? true end def _section :'vlan' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/vlan/entry/@name"]}, "source-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Source IPv4/6 address to send monitoring packet"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end # Source IPv4/6 address to send monitoring packet def source_ip prop_get('source-ip') end # Source IPv4/6 address to send monitoring packet def source_ip=(val) prop_set('source-ip', val) end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vlan def vlan if @create_children @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) else Vlan.new(parent_instance: self) end end class VirtualRouter < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-router/entry/@name"]}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualRouter def virtual_router if @create_children @subclasses['virtual-router'] ||= VirtualRouter.new(parent_instance: self, create_children: @create_children) else VirtualRouter.new(parent_instance: self) end end class LogicalRouter < XML::ConfigClass def has_multiple_values? true end def _section :'logical-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIpGroup < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DestinationIp < XML::ConfigClass def has_multiple_values? true end def _section :'destination-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IPv4/6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IPv4/6 address def member prop_get('member') end # IPv4/6 address def member=(val) prop_set('member', val) end end # class DestinationIp def destination_ip if @create_children @subclasses['destination-ip'] ||= DestinationIp.new(parent_instance: self, create_children: @create_children) else DestinationIp.new(parent_instance: self) end end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DestinationIpGroup def destination_ip_group if @create_children @subclasses['destination-ip-group'] ||= DestinationIpGroup.new(parent_instance: self, create_children: @create_children) else DestinationIpGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/logical-router/entry/@name"]}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any monitored IP)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "ping-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"200", "max"=>"60000", "default"=>"200"}, "ping-count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"10"}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any monitored IP) def failure_condition=(val) prop_set('failure-condition', val) end def ping_interval prop_get('ping-interval') end def ping_interval=(val) prop_set('ping-interval', val) end def ping_count prop_get('ping-count') end def ping_count=(val) prop_set('ping-count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogicalRouter def logical_router if @create_children @subclasses['logical-router'] ||= LogicalRouter.new(parent_instance: self, create_children: @create_children) else LogicalRouter.new(parent_instance: self) end end @props={} end # class PathGroup def path_group @subclasses['path-group'] ||= PathGroup.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any path group)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any path group) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any path group) def failure_condition=(val) prop_set('failure-condition', val) end end # class PathMonitoring def path_monitoring @subclasses['path-monitoring'] ||= PathMonitoring.new(parent_instance: self, create_children: @create_children) end class LinkMonitoring < ConfigClass def has_multiple_values? false end def _section :'link-monitoring' end class LinkGroup < XML::ConfigClass def has_multiple_values? true end def _section :'link-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[not(layer3/decrypt-forward = 'yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any link)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def name prop_get('@name') end def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any link) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any link) def failure_condition=(val) prop_set('failure-condition', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LinkGroup def link_group if @create_children @subclasses['link-group'] ||= LinkGroup.new(parent_instance: self, create_children: @create_children) else LinkGroup.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=> "Condition to determine failure, default any (failure on any link group)", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end # Condition to determine failure, default any (failure on any link group) def failure_condition prop_get('failure-condition') end # Condition to determine failure, default any (failure on any link group) def failure_condition=(val) prop_set('failure-condition', val) end end # class LinkMonitoring def link_monitoring @subclasses['link-monitoring'] ||= LinkMonitoring.new(parent_instance: self, create_children: @create_children) end @props={} end # class Monitoring def monitoring @subclasses['monitoring'] ||= Monitoring.new(parent_instance: self, create_children: @create_children) end @props={"group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/group-id]/@name"], "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"63"}, "string"=>{"maxlen"=>"63"}}}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "help-string"=>"HA pair group description"}, "peer-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"HA pair Peer IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "peer-ip-backup"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.cloud-ha-support=True", "optional"=>"yes", "type"=>"multiple", "help-string"=>"HA pair Backup Peer IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "disallow-loopback"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def group_id prop_get('group-id') end def group_id=(val) prop_set('group-id', val) end # HA pair group description def description prop_get('description') end # HA pair group description def description=(val) prop_set('description', val) end # HA pair Peer IP address def peer_ip prop_get('peer-ip') end # HA pair Peer IP address def peer_ip=(val) prop_set('peer-ip', val) end # HA pair Backup Peer IP address def peer_ip_backup prop_get('peer-ip-backup') end # HA pair Backup Peer IP address def peer_ip_backup=(val) prop_set('peer-ip-backup', val) end end # class Group def group @subclasses['group'] ||= Group.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability pair"}} # Enable high-availability pair def enabled prop_get('enabled') end # Enable high-availability pair def enabled=(val) prop_set('enabled', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end class LogFwdCard < ConfigClass def has_multiple_values? false end def _section :'log-fwd-card' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../@name, '.')", "regex"=>"^((lfc[1-9]\\/[1-9]\\.)?([1-9][0-9]{0,3}))$"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}} def name prop_get('@name') end # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end @props={"port-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"port priority in LACP"}} # port priority in LACP def port_priority prop_get('port-priority') end # port priority in LACP def port_priority=(val) prop_set('port-priority', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["string('lfc1/1')", "string('lfc1/9')"]}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link speed", "enum"=>[{"value"=>"auto", "help-string"=>"Auto negotiation"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link duplex", "enum"=>[{"value"=>"auto", "help-string"=>"Auto negotiation"}]}, "link-state"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link state", "enum"=> [{"value"=>"auto", "help-string"=>"Auto detect"}, {"value"=>"up", "help-string"=>"Force to up"}, {"value"=>"down", "help-string"=>"Force to down"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # Interface link state def link_state prop_get('link-state') end # Interface link state def link_state=(val) prop_set('link-state', val) end # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class LogFwdCard def log_fwd_card @subclasses['log-fwd-card'] ||= LogFwdCard.new(parent_instance: self, create_children: @create_children) end @props={} end # class Deviceconfig def deviceconfig @subclasses['deviceconfig'] ||= Deviceconfig.new(parent_instance: self, create_children: @create_children) end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class MonitorProfile < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"3", "help-string"=>"probing interval in seconds"}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"5", "help-string"=>"number of failed probe to determine tunnel is down"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"wait-recover", "help-string"=>"configure action triggered when tunnel status change", "enum"=> [{"value"=>"wait-recover", "help-string"=>"when tunnel is down, wait for the recover"}, {"value"=>"fail-over", "help-string"=> "when tunnel is down, make traffic fail over to backup path is configured"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # probing interval in seconds def interval prop_get('interval') end # probing interval in seconds def interval=(val) prop_set('interval', val) end # number of failed probe to determine tunnel is down def threshold prop_get('threshold') end # number of failed probe to determine tunnel is down def threshold=(val) prop_set('threshold', val) end # configure action triggered when tunnel status change def action prop_get('action') end # configure action triggered when tunnel status change def action=(val) prop_set('action', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorProfile def monitor_profile if @create_children @subclasses['monitor-profile'] ||= MonitorProfile.new(parent_instance: self, create_children: @create_children) else MonitorProfile.new(parent_instance: self) end end class InterfaceManagementProfile < XML::ConfigClass def has_multiple_values? true end def _section :'interface-management-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"ip address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "http"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "https"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "ping"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "response-pages"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "userid-service"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "userid-syslog-listener-ssl"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "userid-syslog-listener-udp__8"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool", "prune-on"=>"fips-mode"}, "ssh"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "telnet"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "snmp"=>{"node-type"=>"element", "optional"=>"yes", "type"=>"bool"}, "http-ocsp"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def http prop_get('http') end def http=(val) prop_set('http', val) end def https prop_get('https') end def https=(val) prop_set('https', val) end def ping prop_get('ping') end def ping=(val) prop_set('ping', val) end def response_pages prop_get('response-pages') end def response_pages=(val) prop_set('response-pages', val) end def userid_service prop_get('userid-service') end def userid_service=(val) prop_set('userid-service', val) end def userid_syslog_listener_ssl prop_get('userid-syslog-listener-ssl') end def userid_syslog_listener_ssl=(val) prop_set('userid-syslog-listener-ssl', val) end def userid_syslog_listener_udp__8 prop_get('userid-syslog-listener-udp__8') end def userid_syslog_listener_udp__8=(val) prop_set('userid-syslog-listener-udp__8', val) end def ssh prop_get('ssh') end def ssh=(val) prop_set('ssh', val) end def telnet prop_get('telnet') end def telnet=(val) prop_set('telnet', val) end def snmp prop_get('snmp') end def snmp=(val) prop_set('snmp', val) end def http_ocsp prop_get('http-ocsp') end def http_ocsp=(val) prop_set('http-ocsp', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class InterfaceManagementProfile def interface_management_profile if @create_children @subclasses['interface-management-profile'] ||= InterfaceManagementProfile.new(parent_instance: self, create_children: @create_children) else InterfaceManagementProfile.new(parent_instance: self) end end class ZoneProtectionProfile < XML::ConfigClass def has_multiple_values? true end def _section :'zone-protection-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Scan < XML::ConfigClass def has_multiple_values? true end def _section :'scan' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end class Alert < ConfigClass def has_multiple_values? false end def _section :'alert' end @props={} end # class Alert def alert @subclasses['alert'] ||= Alert.new(parent_instance: self, create_children: @create_children) end class Block < ConfigClass def has_multiple_values? false end def _section :'block' end @props={} end # class Block def block @subclasses['block'] ||= Block.new(parent_instance: self, create_children: @create_children) end class BlockIp < ConfigClass def has_multiple_values? false end def _section :'block-ip' end @props={"track-by"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"source"}, {"value"=>"source-and-destination"}]}, "duration"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "help-string"=>"Duration for block ip"}} def track_by prop_get('track-by') end def track_by=(val) prop_set('track-by', val) end # Duration for block ip def duration prop_get('duration') end # Duration for block ip def duration=(val) prop_set('duration', val) end end # class BlockIp def block_ip @subclasses['block-ip'] ||= BlockIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"16", "regex"=>"^[0-9]+$", "help-string"=>"threat id", "autocomplete"=>"yes", "memberof"=> ["##/predefined/threats/scan/entry/@id", "##/predefined/threats/scan/entry/@id"]}, "interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"2", "max"=>"65535"}, "threshold"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"2", "max"=>"65535"}} # threat id def name prop_get('@name') end def interval prop_get('interval') end def interval=(val) prop_set('interval', val) end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scan def scan if @create_children @subclasses['scan'] ||= Scan.new(parent_instance: self, create_children: @create_children) else Scan.new(parent_instance: self) end end class ScanWhiteList < XML::ConfigClass def has_multiple_values? true end def _section :'scan-white-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string"}, "ipv4"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} def name prop_get('@name') end # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ScanWhiteList def scan_white_list if @create_children @subclasses['scan-white-list'] ||= ScanWhiteList.new(parent_instance: self, create_children: @create_children) else ScanWhiteList.new(parent_instance: self) end end class Flood < ConfigClass def has_multiple_values? false end def _section :'flood' end class TcpSyn < ConfigClass def has_multiple_values? false end def _section :'tcp-syn' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end class SynCookies < ConfigClass def has_multiple_values? false end def _section :'syn-cookies' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"0", "help-string"=>"Connection rate (cps) to activate SYN cookies proxy"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"1000000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to activate SYN cookies proxy def activate_rate prop_get('activate-rate') end # Connection rate (cps) to activate SYN cookies proxy def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class SynCookies def syn_cookies @subclasses['syn-cookies'] ||= SynCookies.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class TcpSyn def tcp_syn @subclasses['tcp-syn'] ||= TcpSyn.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end class Icmp < ConfigClass def has_multiple_values? false end def _section :'icmp' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmp def icmp @subclasses['icmp'] ||= Icmp.new(parent_instance: self, create_children: @create_children) end class Icmpv6 < ConfigClass def has_multiple_values? false end def _section :'icmpv6' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Icmpv6 def icmpv6 @subclasses['icmpv6'] ||= Icmpv6.new(parent_instance: self, create_children: @create_children) end class OtherIp < ConfigClass def has_multiple_values? false end def _section :'other-ip' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class OtherIp def other_ip @subclasses['other-ip'] ||= OtherIp.new(parent_instance: self, create_children: @create_children) end class SctpInit < ConfigClass def has_multiple_values? false end def _section :'sctp-init' end class Red < ConfigClass def has_multiple_values? false end def _section :'red' end @props={"alarm-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to generate alarm"}, "activate-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"10000", "help-string"=>"Connection rate (cps) to start RED"}, "maximal-rate"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"2000000", "default"=>"40000", "help-string"=>"Maximal connection rate (cps) allowed"}} # Connection rate (cps) to generate alarm def alarm_rate prop_get('alarm-rate') end # Connection rate (cps) to generate alarm def alarm_rate=(val) prop_set('alarm-rate', val) end # Connection rate (cps) to start RED def activate_rate prop_get('activate-rate') end # Connection rate (cps) to start RED def activate_rate=(val) prop_set('activate-rate', val) end # Maximal connection rate (cps) allowed def maximal_rate prop_get('maximal-rate') end # Maximal connection rate (cps) allowed def maximal_rate=(val) prop_set('maximal-rate', val) end end # class Red def red @subclasses['red'] ||= Red.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class SctpInit def sctp_init @subclasses['sctp-init'] ||= SctpInit.new(parent_instance: self, create_children: @create_children) end @props={} end # class Flood def flood @subclasses['flood'] ||= Flood.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class FilterExtHdr < ConfigClass def has_multiple_values? false end def _section :'filter-ext-hdr' end @props={"hop-by-hop-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with Hop-by-Hop extension"}, "routing-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with Routing extension"}, "dest-option-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with Destination extension"}} # Drop packets with Hop-by-Hop extension def hop_by_hop_hdr prop_get('hop-by-hop-hdr') end # Drop packets with Hop-by-Hop extension def hop_by_hop_hdr=(val) prop_set('hop-by-hop-hdr', val) end # Drop packets with Routing extension def routing_hdr prop_get('routing-hdr') end # Drop packets with Routing extension def routing_hdr=(val) prop_set('routing-hdr', val) end # Drop packets with Destination extension def dest_option_hdr prop_get('dest-option-hdr') end # Drop packets with Destination extension def dest_option_hdr=(val) prop_set('dest-option-hdr', val) end end # class FilterExtHdr def filter_ext_hdr @subclasses['filter-ext-hdr'] ||= FilterExtHdr.new(parent_instance: self, create_children: @create_children) end class IgnoreInvPkt < ConfigClass def has_multiple_values? false end def _section :'ignore-inv-pkt' end @props={"dest-unreach"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 destination unreachable - require explicit security rule match"}, "pkt-too-big"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 packet too big - require explicit security rule match"}, "time-exceeded"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 time exceeded - require explicit security rule match"}, "param-problem"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "ICMPv6 parameter problem - require explicit security rule match"}, "redirect"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"ICMPv6 redirect - require explicit security rule match"}} # ICMPv6 destination unreachable - require explicit security rule match def dest_unreach prop_get('dest-unreach') end # ICMPv6 destination unreachable - require explicit security rule match def dest_unreach=(val) prop_set('dest-unreach', val) end # ICMPv6 packet too big - require explicit security rule match def pkt_too_big prop_get('pkt-too-big') end # ICMPv6 packet too big - require explicit security rule match def pkt_too_big=(val) prop_set('pkt-too-big', val) end # ICMPv6 time exceeded - require explicit security rule match def time_exceeded prop_get('time-exceeded') end # ICMPv6 time exceeded - require explicit security rule match def time_exceeded=(val) prop_set('time-exceeded', val) end # ICMPv6 parameter problem - require explicit security rule match def param_problem prop_get('param-problem') end # ICMPv6 parameter problem - require explicit security rule match def param_problem=(val) prop_set('param-problem', val) end # ICMPv6 redirect - require explicit security rule match def redirect prop_get('redirect') end # ICMPv6 redirect - require explicit security rule match def redirect=(val) prop_set('redirect', val) end end # class IgnoreInvPkt def ignore_inv_pkt @subclasses['ignore-inv-pkt'] ||= IgnoreInvPkt.new(parent_instance: self, create_children: @create_children) end @props={"routing-header-0"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 0 routing header"}, "routing-header-1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 1 routing header"}, "routing-header-3"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with type 3 routing header"}, "routing-header-4-252"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 4 to type 252 routing header"}, "routing-header-253"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with type 253 routing header"}, "routing-header-254"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with type 254 routing header"}, "routing-header-255"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with type 255 routing header"}, "ipv4-compatible-address"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with IPv4 compatible address"}, "multicast-source"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Drop packets with multicast source address"}, "anycast-source"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with anycast source address"}, "options-invalid-ipv6-discard"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Drop packets with invalid IPv6 options in extension header"}, "icmpv6-too-big-small-mtu-discard"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Drop packets with MTU in ICMPv6 (Packet Too Big) less than 1280 bytes"}, "needless-fragment-hdr"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with needless fragment header"}, "reserved-field-set-discard"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Drop packets with reserved field different than 0"}} # Drop packets with type 0 routing header def routing_header_0 prop_get('routing-header-0') end # Drop packets with type 0 routing header def routing_header_0=(val) prop_set('routing-header-0', val) end # Drop packets with type 1 routing header def routing_header_1 prop_get('routing-header-1') end # Drop packets with type 1 routing header def routing_header_1=(val) prop_set('routing-header-1', val) end # Drop packets with type 3 routing header def routing_header_3 prop_get('routing-header-3') end # Drop packets with type 3 routing header def routing_header_3=(val) prop_set('routing-header-3', val) end # Drop packets with type 4 to type 252 routing header def routing_header_4_252 prop_get('routing-header-4-252') end # Drop packets with type 4 to type 252 routing header def routing_header_4_252=(val) prop_set('routing-header-4-252', val) end # Drop packets with type 253 routing header def routing_header_253 prop_get('routing-header-253') end # Drop packets with type 253 routing header def routing_header_253=(val) prop_set('routing-header-253', val) end # Drop packets with type 254 routing header def routing_header_254 prop_get('routing-header-254') end # Drop packets with type 254 routing header def routing_header_254=(val) prop_set('routing-header-254', val) end # Drop packets with type 255 routing header def routing_header_255 prop_get('routing-header-255') end # Drop packets with type 255 routing header def routing_header_255=(val) prop_set('routing-header-255', val) end # Drop packets with IPv4 compatible address def ipv4_compatible_address prop_get('ipv4-compatible-address') end # Drop packets with IPv4 compatible address def ipv4_compatible_address=(val) prop_set('ipv4-compatible-address', val) end # Drop packets with multicast source address def multicast_source prop_get('multicast-source') end # Drop packets with multicast source address def multicast_source=(val) prop_set('multicast-source', val) end # Drop packets with anycast source address def anycast_source prop_get('anycast-source') end # Drop packets with anycast source address def anycast_source=(val) prop_set('anycast-source', val) end # Drop packets with invalid IPv6 options in extension header def options_invalid_ipv6_discard prop_get('options-invalid-ipv6-discard') end # Drop packets with invalid IPv6 options in extension header def options_invalid_ipv6_discard=(val) prop_set('options-invalid-ipv6-discard', val) end # Drop packets with MTU in ICMPv6 (Packet Too Big) less than 1280 bytes def icmpv6_too_big_small_mtu_discard prop_get('icmpv6-too-big-small-mtu-discard') end # Drop packets with MTU in ICMPv6 (Packet Too Big) less than 1280 bytes def icmpv6_too_big_small_mtu_discard=(val) prop_set('icmpv6-too-big-small-mtu-discard', val) end # Drop packets with needless fragment header def needless_fragment_hdr prop_get('needless-fragment-hdr') end # Drop packets with needless fragment header def needless_fragment_hdr=(val) prop_set('needless-fragment-hdr', val) end # Drop packets with reserved field different than 0 def reserved_field_set_discard prop_get('reserved-field-set-discard') end # Drop packets with reserved field different than 0 def reserved_field_set_discard=(val) prop_set('reserved-field-set-discard', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class NonIpProtocol < ConfigClass def has_multiple_values? false end def _section :'non-ip-protocol' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"Protocol name"}, "ether-type"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[0][xX][0-9A-Fa-f]{4}$", "help-string"=>"ether type in 2-byte hex value"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # Protocol name def name prop_get('@name') end # ether type in 2-byte hex value def ether_type prop_get('ether-type') end # ether type in 2-byte hex value def ether_type=(val) prop_set('ether-type', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"list-type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"exclude", "help-string"=>"exclude or include list", "uiHint-fieldLabel"=>"Rule Type", "enum"=> [{"value"=>"exclude", "help-string"=>"Exclude List"}, {"value"=>"include", "help-string"=>"Include List"}]}} # exclude or include list def list_type prop_get('list-type') end # exclude or include list def list_type=(val) prop_set('list-type', val) end end # class NonIpProtocol def non_ip_protocol @subclasses['non-ip-protocol'] ||= NonIpProtocol.new(parent_instance: self, create_children: @create_children) end class L2SecGroupTagProtection < ConfigClass def has_multiple_values? false end def _section :'l2-sec-group-tag-protection' end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"tag name"}, "tag"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^((0|[1-9][0-9]{0,4})|((0|[1-9][0-9]{0,4})-(0|[1-9][0-9]{0,4})))$", "help-string"=>"tag or range of tags to block"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # tag name def name prop_get('@name') end # tag or range of tags to block def tag prop_get('tag') end # tag or range of tags to block def tag=(val) prop_set('tag', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={} end # class L2SecGroupTagProtection def l2_sec_group_tag_protection @subclasses['l2-sec-group-tag-protection'] ||= L2SecGroupTagProtection.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "tcp-reject-non-syn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"global", "help-string"=>"reject non-SYN TCP packet for session setup", "enum"=> [{"value"=>"global", "help-string"=>"Use global setting"}, {"value"=>"yes", "help-string"=>"Reject non-SYN TCP"}, {"value"=>"no", "help-string"=>"Accept non-SYN TCP"}]}, "strip-mptcp-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"global", "help-string"=>"strip mptcp option", "enum"=> [{"value"=>"global", "help-string"=>"Use global setting"}, {"value"=>"yes", "help-string"=>"Strip mptcp option"}, {"value"=>"no", "help-string"=>"Not Strip mptcp option"}]}, "asymmetric-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"global", "help-string"=> "actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST", "enum"=> [{"value"=>"global", "help-string"=>"Use global setting"}, {"value"=>"drop", "help-string"=> "drop offending packets that violated TCP sliding window tracking, enable TCP sequence number check for FIN/RST"}, {"value"=>"bypass", "help-string"=> "bypass inspection for the session that has TCP sliding window tracking errors"}]}, "discard-ip-spoof"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard spoofed IP packet"}, "discard-ip-frag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard IP fragment"}, "discard-icmp-ping-zero-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard ICMP Ping with zero ID"}, "discard-icmp-frag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard ICMP fragment"}, "discard-icmp-large-packet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard Large ICMP packet (IP length > 1024B)"}, "discard-icmp-error"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard ICMP embedded with error message"}, "suppress-icmp-timeexceeded"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not reply ICMP TTL expired error (layer3 only)"}, "suppress-icmp-needfrag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Do not reply ICMP NEEDFRAG (layer3 only)"}, "discard-strict-source-routing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with strict source routing IP option"}, "discard-loose-source-routing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with loose source routing IP option"}, "discard-timestamp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Timestmp IP option"}, "discard-record-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Record Route IP option"}, "discard-security"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Security IP option"}, "discard-stream-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with Stream ID IP option"}, "discard-unknown-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with unknown IP option"}, "discard-malformed-option"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard packets with malformed IP option"}, "discard-overlapping-tcp-segment-mismatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard sessions with mismatch tcp overlapping segment"}, "strict-ip-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Perform strict IP address check"}, "remove-tcp-timestamp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Remove TCP Timestamp"}, "discard-tcp-split-handshake"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Discard tcp split handshake packet"}, "discard-tcp-syn-with-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Discard tcp syn packet with data payload"}, "discard-tcp-synack-with-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Discard tcp syn ack packet with data payload"}, "strip-tcp-fast-open-and-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Strip tcp fast option and data payload"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn prop_get('tcp-reject-non-syn') end # reject non-SYN TCP packet for session setup def tcp_reject_non_syn=(val) prop_set('tcp-reject-non-syn', val) end # strip mptcp option def strip_mptcp_option prop_get('strip-mptcp-option') end # strip mptcp option def strip_mptcp_option=(val) prop_set('strip-mptcp-option', val) end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path prop_get('asymmetric-path') end # actions for TCP sliding window tracking errors, also control enable/disable TCP sequence number check for FIN/RST def asymmetric_path=(val) prop_set('asymmetric-path', val) end # Discard spoofed IP packet def discard_ip_spoof prop_get('discard-ip-spoof') end # Discard spoofed IP packet def discard_ip_spoof=(val) prop_set('discard-ip-spoof', val) end # Discard IP fragment def discard_ip_frag prop_get('discard-ip-frag') end # Discard IP fragment def discard_ip_frag=(val) prop_set('discard-ip-frag', val) end # Discard ICMP Ping with zero ID def discard_icmp_ping_zero_id prop_get('discard-icmp-ping-zero-id') end # Discard ICMP Ping with zero ID def discard_icmp_ping_zero_id=(val) prop_set('discard-icmp-ping-zero-id', val) end # Discard ICMP fragment def discard_icmp_frag prop_get('discard-icmp-frag') end # Discard ICMP fragment def discard_icmp_frag=(val) prop_set('discard-icmp-frag', val) end # Discard Large ICMP packet (IP length > 1024B) def discard_icmp_large_packet prop_get('discard-icmp-large-packet') end # Discard Large ICMP packet (IP length > 1024B) def discard_icmp_large_packet=(val) prop_set('discard-icmp-large-packet', val) end # Discard ICMP embedded with error message def discard_icmp_error prop_get('discard-icmp-error') end # Discard ICMP embedded with error message def discard_icmp_error=(val) prop_set('discard-icmp-error', val) end # Do not reply ICMP TTL expired error (layer3 only) def suppress_icmp_timeexceeded prop_get('suppress-icmp-timeexceeded') end # Do not reply ICMP TTL expired error (layer3 only) def suppress_icmp_timeexceeded=(val) prop_set('suppress-icmp-timeexceeded', val) end # Do not reply ICMP NEEDFRAG (layer3 only) def suppress_icmp_needfrag prop_get('suppress-icmp-needfrag') end # Do not reply ICMP NEEDFRAG (layer3 only) def suppress_icmp_needfrag=(val) prop_set('suppress-icmp-needfrag', val) end # Discard packets with strict source routing IP option def discard_strict_source_routing prop_get('discard-strict-source-routing') end # Discard packets with strict source routing IP option def discard_strict_source_routing=(val) prop_set('discard-strict-source-routing', val) end # Discard packets with loose source routing IP option def discard_loose_source_routing prop_get('discard-loose-source-routing') end # Discard packets with loose source routing IP option def discard_loose_source_routing=(val) prop_set('discard-loose-source-routing', val) end # Discard packets with Timestmp IP option def discard_timestamp prop_get('discard-timestamp') end # Discard packets with Timestmp IP option def discard_timestamp=(val) prop_set('discard-timestamp', val) end # Discard packets with Record Route IP option def discard_record_route prop_get('discard-record-route') end # Discard packets with Record Route IP option def discard_record_route=(val) prop_set('discard-record-route', val) end # Discard packets with Security IP option def discard_security prop_get('discard-security') end # Discard packets with Security IP option def discard_security=(val) prop_set('discard-security', val) end # Discard packets with Stream ID IP option def discard_stream_id prop_get('discard-stream-id') end # Discard packets with Stream ID IP option def discard_stream_id=(val) prop_set('discard-stream-id', val) end # Discard packets with unknown IP option def discard_unknown_option prop_get('discard-unknown-option') end # Discard packets with unknown IP option def discard_unknown_option=(val) prop_set('discard-unknown-option', val) end # Discard packets with malformed IP option def discard_malformed_option prop_get('discard-malformed-option') end # Discard packets with malformed IP option def discard_malformed_option=(val) prop_set('discard-malformed-option', val) end # Discard sessions with mismatch tcp overlapping segment def discard_overlapping_tcp_segment_mismatch prop_get('discard-overlapping-tcp-segment-mismatch') end # Discard sessions with mismatch tcp overlapping segment def discard_overlapping_tcp_segment_mismatch=(val) prop_set('discard-overlapping-tcp-segment-mismatch', val) end # Perform strict IP address check def strict_ip_check prop_get('strict-ip-check') end # Perform strict IP address check def strict_ip_check=(val) prop_set('strict-ip-check', val) end # Remove TCP Timestamp def remove_tcp_timestamp prop_get('remove-tcp-timestamp') end # Remove TCP Timestamp def remove_tcp_timestamp=(val) prop_set('remove-tcp-timestamp', val) end # Discard tcp split handshake packet def discard_tcp_split_handshake prop_get('discard-tcp-split-handshake') end # Discard tcp split handshake packet def discard_tcp_split_handshake=(val) prop_set('discard-tcp-split-handshake', val) end # Discard tcp syn packet with data payload def discard_tcp_syn_with_data prop_get('discard-tcp-syn-with-data') end # Discard tcp syn packet with data payload def discard_tcp_syn_with_data=(val) prop_set('discard-tcp-syn-with-data', val) end # Discard tcp syn ack packet with data payload def discard_tcp_synack_with_data prop_get('discard-tcp-synack-with-data') end # Discard tcp syn ack packet with data payload def discard_tcp_synack_with_data=(val) prop_set('discard-tcp-synack-with-data', val) end # Strip tcp fast option and data payload def strip_tcp_fast_open_and_data prop_get('strip-tcp-fast-open-and-data') end # Strip tcp fast option and data payload def strip_tcp_fast_open_and_data=(val) prop_set('strip-tcp-fast-open-and-data', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ZoneProtectionProfile def zone_protection_profile if @create_children @subclasses['zone-protection-profile'] ||= ZoneProtectionProfile.new(parent_instance: self, create_children: @create_children) else ZoneProtectionProfile.new(parent_instance: self) end end class LldpProfile < XML::ConfigClass def has_multiple_values? true end def _section :'lldp-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class OptionTlvs < ConfigClass def has_multiple_values? false end def _section :'option-tlvs' end class ManagementAddress < ConfigClass def has_multiple_values? false end def _section :'management-address' end class Iplist < XML::ConfigClass def has_multiple_values? true end def _section :'iplist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/loopback/units/entry/@name", "string('loopback')", "string('management')"]}, "ipv4"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#config/devices/entry/deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#config/devices/entry/deviceconfig/system/ipv6-address[('$ifname'='management') or ('$ifname'='')]", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} def name prop_get('@name') end # interface name def interface prop_get('interface') end # interface name def interface=(val) prop_set('interface', val) end # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Iplist def iplist if @create_children @subclasses['iplist'] ||= Iplist.new(parent_instance: self, create_children: @create_children) else Iplist.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class ManagementAddress def management_address @subclasses['management-address'] ||= ManagementAddress.new(parent_instance: self, create_children: @create_children) end @props={"port-description"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "system-name"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "system-description"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}, "system-capabilities"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} def port_description prop_get('port-description') end def port_description=(val) prop_set('port-description', val) end def system_name prop_get('system-name') end def system_name=(val) prop_set('system-name', val) end def system_description prop_get('system-description') end def system_description=(val) prop_set('system-description', val) end def system_capabilities prop_get('system-capabilities') end def system_capabilities=(val) prop_set('system-capabilities', val) end end # class OptionTlvs def option_tlvs @subclasses['option-tlvs'] ||= OptionTlvs.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"transmit-receive", "help-string"=>"lldp operation mode", "enum"=> [{"value"=>"transmit-receive", "help-string"=>"transmit and receive"}, {"value"=>"transmit-only", "help-string"=>"transmit only and will not receive"}, {"value"=>"receive-only", "help-string"=>"receive only and will not transmit"}]}, "snmp-syslog-notification"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"no", "type"=>"bool"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # lldp operation mode def mode prop_get('mode') end # lldp operation mode def mode=(val) prop_set('mode', val) end def snmp_syslog_notification prop_get('snmp-syslog-notification') end def snmp_syslog_notification=(val) prop_set('snmp-syslog-notification', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LldpProfile def lldp_profile if @create_children @subclasses['lldp-profile'] ||= LldpProfile.new(parent_instance: self, create_children: @create_children) else LldpProfile.new(parent_instance: self) end end class BfdProfile < XML::ConfigClass def has_multiple_values? true end def _section :'bfd-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Multihop < ConfigClass def has_multiple_values? false end def _section :'multihop' end @props={"min-received-ttl"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"254", "help-string"=>"minimum accepted ttl on received BFD packet", "uiHint-fieldLabel"=>"Minimum Rx TTL"}} # minimum accepted ttl on received BFD packet def min_received_ttl prop_get('min-received-ttl') end # minimum accepted ttl on received BFD packet def min_received_ttl=(val) prop_set('min-received-ttl', val) end end # class Multihop def multihop @subclasses['multihop'] ||= Multihop.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"active", "help-string"=>"BFD operation mode", "enum"=> [{"value"=>"active", "help-string"=>"actively sends control packets to neighbor"}, {"value"=>"passive", "help-string"=> "wait for neighbor to send control packets, will respond as required"}]}, "min-tx-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"50", "max"=>"2000", "default"=>"1000", "help-string"=>"desired minimum tx interval in ms", "uiHint-fieldLabel"=>"Desired Minimum Tx Interval (ms)"}, "min-rx-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"50", "max"=>"2000", "default"=>"1000", "help-string"=>"required minimum rx interval in ms", "uiHint-fieldLabel"=>"Required Minimum Rx Interval (ms)"}, "detection-multiplier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"50", "default"=>"3", "help-string"=>"multiplier sent to remote system", "uiHint-fieldLabel"=>"Detection Time Multiplier"}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"120000", "default"=>"0", "help-string"=>"delay transmission and reception of control packets in ms", "uiHint-fieldLabel"=>"Hold Time (ms)"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # BFD operation mode def mode prop_get('mode') end # BFD operation mode def mode=(val) prop_set('mode', val) end # desired minimum tx interval in ms def min_tx_interval prop_get('min-tx-interval') end # desired minimum tx interval in ms def min_tx_interval=(val) prop_set('min-tx-interval', val) end # required minimum rx interval in ms def min_rx_interval prop_get('min-rx-interval') end # required minimum rx interval in ms def min_rx_interval=(val) prop_set('min-rx-interval', val) end # multiplier sent to remote system def detection_multiplier prop_get('detection-multiplier') end # multiplier sent to remote system def detection_multiplier=(val) prop_set('detection-multiplier', val) end # delay transmission and reception of control packets in ms def hold_time prop_get('hold-time') end # delay transmission and reception of control packets in ms def hold_time=(val) prop_set('hold-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class BfdProfile def bfd_profile if @create_children @subclasses['bfd-profile'] ||= BfdProfile.new(parent_instance: self, create_children: @create_children) else BfdProfile.new(parent_instance: self) end end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Interface < ConfigClass def has_multiple_values? false end def _section :'interface' end class Ethernet < XML::ConfigClass def has_multiple_values? true end def _section :'ethernet' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tap < ConfigClass def has_multiple_values? false end def _section :'tap' end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Tap def tap @subclasses['tap'] ||= Tap.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class LogCard < ConfigClass def has_multiple_values? false end def _section :'log-card' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}} def name prop_get('@name') end # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the log card forwarding interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the log card forwarding interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"log forwarding card default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the log card forwarding interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"log forwarding IPv6 card default gateway"}} # IP address for the log card forwarding interface def ip_address prop_get('ip-address') end # IP address for the log card forwarding interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the log card forwarding interface def netmask prop_get('netmask') end # IP netmask for the log card forwarding interface def netmask=(val) prop_set('netmask', val) end # log forwarding card default gateway def default_gateway prop_get('default-gateway') end # log forwarding card default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the log card forwarding interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the log card forwarding interface def ipv6_address=(val) prop_set('ipv6-address', val) end # log forwarding IPv6 card default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # log forwarding IPv6 card default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end end # class LogCard def log_card @subclasses['log-card'] ||= LogCard.new(parent_instance: self, create_children: @create_children) end class DecryptMirror < ConfigClass def has_multiple_values? false end def _section :'decrypt-mirror' end @props={} end # class DecryptMirror def decrypt_mirror @subclasses['decrypt-mirror'] ||= DecryptMirror.new(parent_instance: self, create_children: @create_children) end class VirtualWire < ConfigClass def has_multiple_values? false end def _section :'virtual-wire' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class IpClassifier < XML::ConfigClass def has_multiple_values? true end def _section :'ip-classifier' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1024", "multi-types"=>{"ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpClassifier def ip_classifier if @create_children @subclasses['ip-classifier'] ||= IpClassifier.new(parent_instance: self, create_children: @create_children) else IpClassifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Allow LACP traffic to traverse this device in HA passive state"}} # Allow LACP traffic to traverse this device in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Allow LACP traffic to traverse this device in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={} end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class VirtualWire def virtual_wire @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) end class Layer2 < ConfigClass def has_multiple_values? false end def _section :'layer2' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer2 def layer2 @subclasses['layer2'] ||= Layer2.new(parent_instance: self, create_children: @create_children) end class Layer3 < ConfigClass def has_multiple_values? false end def _section :'layer3' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "sdwan-gateway"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Gateway IPv4 Address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # IP address/netmask or address object name def name prop_get('@name') end # Gateway IPv4 Address def sdwan_gateway prop_get('sdwan-gateway') end # Gateway IPv4 Address def sdwan_gateway=(val) prop_set('sdwan-gateway', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Pppoe < ConfigClass def has_multiple_values? false end def _section :'pppoe' end class StaticAddress < ConfigClass def has_multiple_values? false end def _section :'static-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"static ip address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # static ip address def ip prop_get('ip') end # static ip address def ip=(val) prop_set('ip', val) end end # class StaticAddress def static_address @subclasses['static-address'] ||= StaticAddress.new(parent_instance: self, create_children: @create_children) end class Passive < ConfigClass def has_multiple_values? false end def _section :'passive' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Passive def passive @subclasses['passive'] ||= Passive.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "authentication"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"authentication protocol", "enum"=> [{"value"=>"CHAP", "help-string"=>"Challenge Handshake Authentication Protocol"}, {"value"=>"PAP", "help-string"=>"Password Authentication Protocol"}, {"value"=>"auto", "help-string"=>"auto select CHAP or PAP"}]}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"username for ppp authentication"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"password for ppp autentication"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"automatically create default route pointing to peer"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric of the default route created"}, "access-concentrator"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"desired access concentrator"}, "service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"desired service"}, "auto-connect"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"automatically re-connect to peer"}, "auto-connect-timeout"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"0", "min"=>"0", "max"=>"65535", "help-string"=>"delay (in seconds) before autmoatically re-connect"}, "idle-disconnect"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"0", "min"=>"0", "max"=>"65535", "help-string"=> "idle timeout (in minutes) for the pppoe session (0 to disable)"}, "clear-on-disconnect"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"clear ip address and gateway on pppoe disconnect"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # authentication protocol def authentication prop_get('authentication') end # authentication protocol def authentication=(val) prop_set('authentication', val) end # username for ppp authentication def username prop_get('username') end # username for ppp authentication def username=(val) prop_set('username', val) end # password for ppp autentication def password prop_get('password') end # password for ppp autentication def password=(val) prop_set('password', val) end # automatically create default route pointing to peer def create_default_route prop_get('create-default-route') end # automatically create default route pointing to peer def create_default_route=(val) prop_set('create-default-route', val) end # metric of the default route created def default_route_metric prop_get('default-route-metric') end # metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end # desired access concentrator def access_concentrator prop_get('access-concentrator') end # desired access concentrator def access_concentrator=(val) prop_set('access-concentrator', val) end # desired service def service prop_get('service') end # desired service def service=(val) prop_set('service', val) end # automatically re-connect to peer def auto_connect prop_get('auto-connect') end # automatically re-connect to peer def auto_connect=(val) prop_set('auto-connect', val) end # delay (in seconds) before autmoatically re-connect def auto_connect_timeout prop_get('auto-connect-timeout') end # delay (in seconds) before autmoatically re-connect def auto_connect_timeout=(val) prop_set('auto-connect-timeout', val) end # idle timeout (in minutes) for the pppoe session (0 to disable) def idle_disconnect prop_get('idle-disconnect') end # idle timeout (in minutes) for the pppoe session (0 to disable) def idle_disconnect=(val) prop_set('idle-disconnect', val) end # clear ip address and gateway on pppoe disconnect def clear_on_disconnect prop_get('clear-on-disconnect') end # clear ip address and gateway on pppoe disconnect def clear_on_disconnect=(val) prop_set('clear-on-disconnect', val) end end # class Pppoe def pppoe @subclasses['pppoe'] ||= Pppoe.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class SdwanLinkSettings < ConfigClass def has_multiple_values? false end def _section :'sdwan-link-settings' end class UpstreamNat < ConfigClass def has_multiple_values? false end def _section :'upstream-nat' end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "help-string"=>"Upstream NAT IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"Upstream NAT address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # Upstream NAT IP address def ip_address prop_get('ip-address') end # Upstream NAT IP address def ip_address=(val) prop_set('ip-address', val) end # Upstream NAT address FQDN name configuration def fqdn prop_get('fqdn') end # Upstream NAT address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end class Ddns < ConfigClass def has_multiple_values? false end def _section :'ddns' end @props={} end # class Ddns def ddns @subclasses['ddns'] ||= Ddns.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable upstream NAT IP config"}} # Enable upstream NAT IP config def enable prop_get('enable') end # Enable upstream NAT IP config def enable=(val) prop_set('enable', val) end end # class UpstreamNat def upstream_nat @subclasses['upstream-nat'] ||= UpstreamNat.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable sdwan on this ethernet interface"}, "sdwan-interface-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Sdwan link characteristics", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/sdwan-interface-profile/entry/@name", "#config/shared/sdwan-interface-profile/entry/@name"]}} # Enable sdwan on this ethernet interface def enable prop_get('enable') end # Enable sdwan on this ethernet interface def enable=(val) prop_set('enable', val) end # Sdwan link characteristics def sdwan_interface_profile prop_get('sdwan-interface-profile') end # Sdwan link characteristics def sdwan_interface_profile=(val) prop_set('sdwan-interface-profile', val) end end # class SdwanLinkSettings def sdwan_link_settings @subclasses['sdwan-link-settings'] ||= SdwanLinkSettings.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ethernet[1-9][0-9]?\\/[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024"}} def name prop_get('@name') end def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit1, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "untagged-sub-interface"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.ethernet.layer3.untagged-sub-interface-disable=True", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable untagged sub-interface"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit1, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit1, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Enable untagged sub-interface def untagged_sub_interface prop_get('untagged-sub-interface') end # Enable untagged sub-interface def untagged_sub_interface=(val) prop_set('untagged-sub-interface', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer3 def layer3 @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end @props={"port-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"port priority in LACP"}} # port priority in LACP def port_priority prop_get('port-priority') end # port priority in LACP def port_priority=(val) prop_set('port-priority', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["string('ethernet1/1')", "string('ethernet1/2')", "string('ethernet1/3')", "string('ethernet1/4')", "string('ethernet1/5')", "string('ethernet1/6')", "string('ethernet1/7')", "string('ethernet1/8')", "string('ethernet1/9')", "string('ethernet1/10')", "string('ethernet1/11')", "string('ethernet1/12')", "string('ethernet1/13')", "string('ethernet1/14')", "string('ethernet1/15')", "string('ethernet1/16')", "string('ethernet1/17')", "string('ethernet1/18')", "string('ethernet1/19')", "string('ethernet1/20')", "string('ethernet1/21')", "string('ethernet1/22')", "string('ethernet1/23')", "string('ethernet1/24')", "string('ethernet1/25')", "string('ethernet1/26')", "string('ethernet1/27')", "string('ethernet1/28')", "string('ethernet1/29')", "string('ethernet1/30')", "string('ethernet1/31')", "string('ethernet1/32')", "string('ethernet1/33')", "string('ethernet1/34')", "string('ethernet1/35')", "string('ethernet1/36')", "string('ethernet1/37')", "string('ethernet1/38')", "string('ethernet1/39')", "string('ethernet1/40')", "string('ethernet1/41')", "string('ethernet1/42')", "string('ethernet1/43')", "string('ethernet1/44')", "string('ethernet1/45')", "string('ethernet1/46')", "string('ethernet1/47')", "string('ethernet1/48')", "string('ethernet1/49')", "string('ethernet1/50')", "string('ethernet1/51')", "string('ethernet1/52')", "string('ethernet1/53')", "string('ethernet1/54')", "string('ethernet1/55')", "string('ethernet1/56')", "string('ethernet1/57')", "string('ethernet1/58')", "string('ethernet1/59')", "string('ethernet1/60')", "string('ethernet2/1')", "string('ethernet2/2')", "string('ethernet2/3')", "string('ethernet2/4')", "string('ethernet2/5')", "string('ethernet2/6')", "string('ethernet2/7')", "string('ethernet2/8')", "string('ethernet2/9')", "string('ethernet2/10')", "string('ethernet2/11')", "string('ethernet2/12')", "string('ethernet2/13')", "string('ethernet2/14')", "string('ethernet2/15')", "string('ethernet2/16')", "string('ethernet2/17')", "string('ethernet2/18')", "string('ethernet2/19')", "string('ethernet2/20')", "string('ethernet2/21')", "string('ethernet2/22')", "string('ethernet2/23')", "string('ethernet2/24')", "string('ethernet2/25')", "string('ethernet2/26')", "string('ethernet2/27')", "string('ethernet2/28')", "string('ethernet3/1')", "string('ethernet3/2')", "string('ethernet3/3')", "string('ethernet3/4')", "string('ethernet3/5')", "string('ethernet3/6')", "string('ethernet3/7')", "string('ethernet3/8')", "string('ethernet3/9')", "string('ethernet3/10')", "string('ethernet3/11')", "string('ethernet3/12')", "string('ethernet3/13')", "string('ethernet3/14')", "string('ethernet3/15')", "string('ethernet3/16')", "string('ethernet3/17')", "string('ethernet3/18')", "string('ethernet3/19')", "string('ethernet3/20')", "string('ethernet3/21')", "string('ethernet3/22')", "string('ethernet3/23')", "string('ethernet3/24')", "string('ethernet3/25')", "string('ethernet3/26')", "string('ethernet3/27')", "string('ethernet3/28')", "string('ethernet4/1')", "string('ethernet4/2')", "string('ethernet4/3')", "string('ethernet4/4')", "string('ethernet4/5')", "string('ethernet4/6')", "string('ethernet4/7')", "string('ethernet4/8')", "string('ethernet4/9')", "string('ethernet4/10')", "string('ethernet4/11')", "string('ethernet4/12')", "string('ethernet4/13')", "string('ethernet4/14')", "string('ethernet4/15')", "string('ethernet4/16')", "string('ethernet4/17')", "string('ethernet4/18')", "string('ethernet4/19')", "string('ethernet4/20')", "string('ethernet4/21')", "string('ethernet4/22')", "string('ethernet4/23')", "string('ethernet4/24')", "string('ethernet4/25')", "string('ethernet4/26')", "string('ethernet4/27')", "string('ethernet4/28')", "string('ethernet5/1')", "string('ethernet5/2')", "string('ethernet5/3')", "string('ethernet5/4')", "string('ethernet5/5')", "string('ethernet5/6')", "string('ethernet5/7')", "string('ethernet5/8')", "string('ethernet5/9')", "string('ethernet5/10')", "string('ethernet5/11')", "string('ethernet5/12')", "string('ethernet5/13')", "string('ethernet5/14')", "string('ethernet5/15')", "string('ethernet5/16')", "string('ethernet5/17')", "string('ethernet5/18')", "string('ethernet5/19')", "string('ethernet5/20')", "string('ethernet5/21')", "string('ethernet5/22')", "string('ethernet5/23')", "string('ethernet5/24')", "string('ethernet5/25')", "string('ethernet5/26')", "string('ethernet5/27')", "string('ethernet5/28')", "string('ethernet6/1')", "string('ethernet6/2')", "string('ethernet6/3')", "string('ethernet6/4')", "string('ethernet6/5')", "string('ethernet6/6')", "string('ethernet6/7')", "string('ethernet6/8')", "string('ethernet6/9')", "string('ethernet6/10')", "string('ethernet6/11')", "string('ethernet6/12')", "string('ethernet6/13')", "string('ethernet6/14')", "string('ethernet6/15')", "string('ethernet6/16')", "string('ethernet6/17')", "string('ethernet6/18')", "string('ethernet6/19')", "string('ethernet6/20')", "string('ethernet6/21')", "string('ethernet6/22')", "string('ethernet6/23')", "string('ethernet6/24')", "string('ethernet6/25')", "string('ethernet6/26')", "string('ethernet6/27')", "string('ethernet6/28')", "string('ethernet7/1')", "string('ethernet7/2')", "string('ethernet7/3')", "string('ethernet7/4')", "string('ethernet7/5')", "string('ethernet7/6')", "string('ethernet7/7')", "string('ethernet7/8')", "string('ethernet7/9')", "string('ethernet7/10')", "string('ethernet7/11')", "string('ethernet7/12')", "string('ethernet7/13')", "string('ethernet7/14')", "string('ethernet7/15')", "string('ethernet7/16')", "string('ethernet7/17')", "string('ethernet7/18')", "string('ethernet7/19')", "string('ethernet7/20')", "string('ethernet7/21')", "string('ethernet7/22')", "string('ethernet7/23')", "string('ethernet7/24')", "string('ethernet7/25')", "string('ethernet7/26')", "string('ethernet7/27')", "string('ethernet7/28')", "string('ethernet8/1')", "string('ethernet8/2')", "string('ethernet8/3')", "string('ethernet8/4')", "string('ethernet8/5')", "string('ethernet8/6')", "string('ethernet8/7')", "string('ethernet8/8')", "string('ethernet8/9')", "string('ethernet8/10')", "string('ethernet8/11')", "string('ethernet8/12')", "string('ethernet8/13')", "string('ethernet8/14')", "string('ethernet8/15')", "string('ethernet8/16')", "string('ethernet8/17')", "string('ethernet8/18')", "string('ethernet8/19')", "string('ethernet8/20')", "string('ethernet8/21')", "string('ethernet8/22')", "string('ethernet8/23')", "string('ethernet8/24')", "string('ethernet8/25')", "string('ethernet8/26')", "string('ethernet8/27')", "string('ethernet8/28')", "string('ethernet9/1')", "string('ethernet9/2')", "string('ethernet9/3')", "string('ethernet9/4')", "string('ethernet9/5')", "string('ethernet9/6')", "string('ethernet9/7')", "string('ethernet9/8')", "string('ethernet9/9')", "string('ethernet9/10')", "string('ethernet9/11')", "string('ethernet9/12')", "string('ethernet9/13')", "string('ethernet9/14')", "string('ethernet9/15')", "string('ethernet9/16')", "string('ethernet9/17')", "string('ethernet9/18')", "string('ethernet9/19')", "string('ethernet9/20')", "string('ethernet9/21')", "string('ethernet9/22')", "string('ethernet9/23')", "string('ethernet9/24')", "string('ethernet9/25')", "string('ethernet9/26')", "string('ethernet9/27')", "string('ethernet9/28')", "string('ethernet10/1')", "string('ethernet10/2')", "string('ethernet10/3')", "string('ethernet10/4')", "string('ethernet10/5')", "string('ethernet10/6')", "string('ethernet10/7')", "string('ethernet10/8')", "string('ethernet10/9')", "string('ethernet10/10')", "string('ethernet10/11')", "string('ethernet10/12')", "string('ethernet10/13')", "string('ethernet10/14')", "string('ethernet10/15')", "string('ethernet10/16')", "string('ethernet10/17')", "string('ethernet10/18')", "string('ethernet10/19')", "string('ethernet10/20')", "string('ethernet10/21')", "string('ethernet10/22')", "string('ethernet10/23')", "string('ethernet10/24')", "string('ethernet10/25')", "string('ethernet10/26')", "string('ethernet10/27')", "string('ethernet10/28')", "string('ethernet11/1')", "string('ethernet11/2')", "string('ethernet11/3')", "string('ethernet11/4')", "string('ethernet11/5')", "string('ethernet11/6')", "string('ethernet11/7')", "string('ethernet11/8')", "string('ethernet11/9')", "string('ethernet11/10')", "string('ethernet11/11')", "string('ethernet11/12')", "string('ethernet11/13')", "string('ethernet11/14')", "string('ethernet11/15')", "string('ethernet11/16')", "string('ethernet11/17')", "string('ethernet11/18')", "string('ethernet11/19')", "string('ethernet11/20')", "string('ethernet11/21')", "string('ethernet11/22')", "string('ethernet11/23')", "string('ethernet11/24')", "string('ethernet11/25')", "string('ethernet11/26')", "string('ethernet11/27')", "string('ethernet11/28')", "string('ethernet12/1')", "string('ethernet12/2')", "string('ethernet12/3')", "string('ethernet12/4')", "string('ethernet12/5')", "string('ethernet12/6')", "string('ethernet12/7')", "string('ethernet12/8')", "string('ethernet12/9')", "string('ethernet12/10')", "string('ethernet12/11')", "string('ethernet12/12')", "string('ethernet12/13')", "string('ethernet12/14')", "string('ethernet12/15')", "string('ethernet12/16')", "string('ethernet12/17')", "string('ethernet12/18')", "string('ethernet12/19')", "string('ethernet12/20')", "string('ethernet12/21')", "string('ethernet12/22')", "string('ethernet12/23')", "string('ethernet12/24')", "string('ethernet12/25')", "string('ethernet12/26')", "string('ethernet12/27')", "string('ethernet12/28')"]}, "link-speed"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link speed", "enum"=> [{"value"=>"auto"}, {"value"=>"10"}, {"value"=>"100"}, {"value"=>"1000"}, {"value"=>"10000"}, {"value"=>"40000"}, {"value"=>"100000"}]}, "link-duplex"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link duplex", "enum"=>[{"value"=>"auto"}, {"value"=>"half"}, {"value"=>"full"}]}, "link-state"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"auto", "help-string"=>"Interface link state", "enum"=> [{"value"=>"auto", "help-string"=>"Auto detect"}, {"value"=>"up", "help-string"=>"Force to up"}, {"value"=>"down", "help-string"=>"Force to down"}]}, "aggregate-group"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Aggregate interface group", "autocomplete"=>"yes", "memberof"=>["#interface/aggregate-ethernet/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # Interface link speed def link_speed prop_get('link-speed') end # Interface link speed def link_speed=(val) prop_set('link-speed', val) end # Interface link duplex def link_duplex prop_get('link-duplex') end # Interface link duplex def link_duplex=(val) prop_set('link-duplex', val) end # Interface link state def link_state prop_get('link-state') end # Interface link state def link_state=(val) prop_set('link-state', val) end # Aggregate interface group def aggregate_group prop_get('aggregate-group') end # Aggregate interface group def aggregate_group=(val) prop_set('aggregate-group', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ethernet def ethernet if @create_children @subclasses['ethernet'] ||= Ethernet.new(parent_instance: self, create_children: @create_children) else Ethernet.new(parent_instance: self) end end class AggregateEthernet < XML::ConfigClass def has_multiple_values? true end def _section :'aggregate-ethernet' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "fast-failover"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"passive", "help-string"=>"LACP mode", "enum"=>[{"value"=>"passive"}, {"value"=>"active"}]}, "transmission-rate"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"slow", "help-string"=>"periodic transition rate. N/A in passive mode", "enum"=>[{"value"=>"fast"}, {"value"=>"slow"}]}, "system-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"LACP system priority in system ID"}, "max-ports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"8", "help-string"=>"maximum number of physical ports bundled in the LAG"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def fast_failover prop_get('fast-failover') end def fast_failover=(val) prop_set('fast-failover', val) end # LACP mode def mode prop_get('mode') end # LACP mode def mode=(val) prop_set('mode', val) end # periodic transition rate. N/A in passive mode def transmission_rate prop_get('transmission-rate') end # periodic transition rate. N/A in passive mode def transmission_rate=(val) prop_set('transmission-rate', val) end # LACP system priority in system ID def system_priority prop_get('system-priority') end # LACP system priority in system ID def system_priority=(val) prop_set('system-priority', val) end # maximum number of physical ports bundled in the LAG def max_ports prop_get('max-ports') end # maximum number of physical ports bundled in the LAG def max_ports=(val) prop_set('max-ports', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class DecryptMirror < ConfigClass def has_multiple_values? false end def _section :'decrypt-mirror' end @props={} end # class DecryptMirror def decrypt_mirror @subclasses['decrypt-mirror'] ||= DecryptMirror.new(parent_instance: self, create_children: @create_children) end class VirtualWire < ConfigClass def has_multiple_values? false end def _section :'virtual-wire' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class IpClassifier < XML::ConfigClass def has_multiple_values? true end def _section :'ip-classifier' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=>{"ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpClassifier def ip_classifier if @create_children @subclasses['ip-classifier'] ||= IpClassifier.new(parent_instance: self, create_children: @create_children) else IpClassifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ae[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class VirtualWire def virtual_wire @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) end class Layer2 < ConfigClass def has_multiple_values? false end def _section :'layer2' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ae[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LACP pre-negotiation in HA passive state"}} # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "fast-failover"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"passive", "help-string"=>"LACP mode", "enum"=>[{"value"=>"passive"}, {"value"=>"active"}]}, "transmission-rate"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"slow", "help-string"=>"periodic transition rate. N/A in passive mode", "enum"=>[{"value"=>"fast"}, {"value"=>"slow"}]}, "system-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"LACP system priority in system ID"}, "max-ports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"8", "help-string"=>"maximum number of physical ports bundled in the LAG"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def fast_failover prop_get('fast-failover') end def fast_failover=(val) prop_set('fast-failover', val) end # LACP mode def mode prop_get('mode') end # LACP mode def mode=(val) prop_set('mode', val) end # periodic transition rate. N/A in passive mode def transmission_rate prop_get('transmission-rate') end # periodic transition rate. N/A in passive mode def transmission_rate=(val) prop_set('transmission-rate', val) end # LACP system priority in system ID def system_priority prop_get('system-priority') end # LACP system priority in system ID def system_priority=(val) prop_set('system-priority', val) end # maximum number of physical ports bundled in the LAG def max_ports prop_get('max-ports') end # maximum number of physical ports bundled in the LAG def max_ports=(val) prop_set('max-ports', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end @props={"netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer2 def layer2 @subclasses['layer2'] ||= Layer2.new(parent_instance: self, create_children: @create_children) end class Layer3 < ConfigClass def has_multiple_values? false end def _section :'layer3' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Lacp < ConfigClass def has_multiple_values? false end def _section :'lacp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LACP pre-negotiation in HA passive state"}} # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LACP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "fast-failover"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"passive", "help-string"=>"LACP mode", "enum"=>[{"value"=>"passive"}, {"value"=>"active"}]}, "transmission-rate"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"slow", "help-string"=>"periodic transition rate. N/A in passive mode", "enum"=>[{"value"=>"fast"}, {"value"=>"slow"}]}, "system-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"32768", "help-string"=>"LACP system priority in system ID"}, "max-ports"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"8", "default"=>"8", "help-string"=>"maximum number of physical ports bundled in the LAG"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def fast_failover prop_get('fast-failover') end def fast_failover=(val) prop_set('fast-failover', val) end # LACP mode def mode prop_get('mode') end # LACP mode def mode=(val) prop_set('mode', val) end # periodic transition rate. N/A in passive mode def transmission_rate prop_get('transmission-rate') end # periodic transition rate. N/A in passive mode def transmission_rate=(val) prop_set('transmission-rate', val) end # LACP system priority in system ID def system_priority prop_get('system-priority') end # LACP system priority in system ID def system_priority=(val) prop_set('system-priority', val) end # maximum number of physical ports bundled in the LAG def max_ports prop_get('max-ports') end # maximum number of physical ports bundled in the LAG def max_ports=(val) prop_set('max-ports', val) end end # class Lacp def lacp @subclasses['lacp'] ||= Lacp.new(parent_instance: self, create_children: @create_children) end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end @props={"passive-pre-negotiation"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable LLDP pre-negotiation in HA passive state"}} # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation prop_get('passive-pre-negotiation') end # Enable LLDP pre-negotiation in HA passive state def passive_pre_negotiation=(val) prop_set('passive-pre-negotiation', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"LLDP profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/lldp-profile/entry/@name"]}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # LLDP profile def profile prop_get('profile') end # LLDP profile def profile=(val) prop_set('profile', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(../../../@name, '.')", "regex"=>"^((ae[1-9][0-9]?\\.)?([1-9][0-9]{0,3}))$"}, "decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "tag"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"4094", "help-string"=>"802.1q VLAN tag"}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # 802.1q VLAN tag def tag prop_get('tag') end # 802.1q VLAN tag def tag=(val) prop_set('tag', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"decrypt-forward"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "untagged-sub-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable untagged sub-interface"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}} def decrypt_forward prop_get('decrypt-forward') end def decrypt_forward=(val) prop_set('decrypt-forward', val) end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Enable untagged sub-interface def untagged_sub_interface prop_get('untagged-sub-interface') end # Enable untagged sub-interface def untagged_sub_interface=(val) prop_set('untagged-sub-interface', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end end # class Layer3 def layer3 @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["string('ae1')", "string('ae2')", "string('ae3')", "string('ae4')", "string('ae5')", "string('ae6')", "string('ae7')", "string('ae8')", "string('ae9')", "string('ae10')", "string('ae11')", "string('ae12')", "string('ae13')", "string('ae14')", "string('ae15')", "string('ae16')", "string('ae17')", "string('ae18')", "string('ae19')", "string('ae20')", "string('ae21')", "string('ae22')", "string('ae23')", "string('ae24')", "string('ae25')", "string('ae26')", "string('ae27')", "string('ae28')", "string('ae29')", "string('ae30')", "string('ae31')", "string('ae32')", "string('ae32')"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AggregateEthernet def aggregate_ethernet if @create_children @subclasses['aggregate-ethernet'] ||= AggregateEthernet.new(parent_instance: self, create_children: @create_children) else AggregateEthernet.new(parent_instance: self) end end class Vlan < ConfigClass def has_multiple_values? false end def _section :'vlan' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface associated with this ARP entry", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name"]}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end # Interface associated with this ARP entry def interface prop_get('interface') end # Interface associated with this ARP entry def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable advertising this prefix in router advertisements"}, "valid-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"2592000", "help-string"=> "Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "preferred-lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"604800", "help-string"=> "Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967294"}, "enum"=>[{"value"=>"infinity"}]}}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # enable advertising this prefix in router advertisements def enable prop_get('enable') end # enable advertising this prefix in router advertisements def enable=(val) prop_set('enable', val) end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime prop_get('valid-lifetime') end # Valid Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def valid_lifetime=(val) prop_set('valid-lifetime', val) end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime prop_get('preferred-lifetime') end # Preferred Lifetime (in seconds) of the prefix advertised in Router Advertisement messages def preferred_lifetime=(val) prop_set('preferred-lifetime', val) end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class NeighborDiscovery < ConfigClass def has_multiple_values? false end def _section :'neighbor-discovery' end class RouterAdvertisement < ConfigClass def has_multiple_values? false end def _section :'router-advertisement' end class Prefix < XML::ConfigClass def has_multiple_values? true end def _section :'prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ValidLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'valid-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"2592000", "help-string"=> "fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # fixed value (in seconds) of the Valid Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class ValidLifetime def valid_lifetime if @create_children @subclasses['valid-lifetime'] ||= ValidLifetime.new(parent_instance: self, create_children: @create_children) else ValidLifetime.new(parent_instance: self) end end class PreferredLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'preferred-lifetime' end @props={"fixed-time"=> {"node-type"=>"element", "type"=>"rangedint", "default"=>"604800", "min"=>"0", "max"=>"4294967295", "help-string"=> "Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages"}, "expire-time"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"19", "maxlen"=>"19", "regex"=> "[0-9][0-9][0-9][0-9]/([0][1-9]|[1][0-2])/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])", "help-string"=> "expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59)"}} # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time prop_get('fixed-time') end # Fixed value (in seconds) of the Preferred Lifetime field of the prefix in Router Advertisement messages def fixed_time=(val) prop_set('fixed-time', val) end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time prop_get('expire-time') end # expiration time in date time specification YYYY/MM/DD@hh:mm:ss (e.g. 2006/08/01@23:59:59) def expire_time=(val) prop_set('expire-time', val) end end # class PreferredLifetime def preferred_lifetime if @create_children @subclasses['preferred-lifetime'] ||= PreferredLifetime.new(parent_instance: self, create_children: @create_children) else PreferredLifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IPv6 prefix"}, "onlink-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages"}, "auto-config-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages"}} # IPv6 prefix def name prop_get('@name') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag prop_get('onlink-flag') end # Set the On-Link Flag (L-bit) of the prefix in Router Advertisement messages def onlink_flag=(val) prop_set('onlink-flag', val) end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag prop_get('auto-config-flag') end # Set the Auto Address Configuration Flag (A-bit) of the prefix in Router Advertisement messages def auto_config_flag=(val) prop_set('auto-config-flag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Prefix def prefix if @create_children @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) else Prefix.new(parent_instance: self) end end class DnsSupport < ConfigClass def has_multiple_values? false end def _section :'dns-support' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"IPv6 address"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # IPv6 address def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Suffix < XML::ConfigClass def has_multiple_values? true end def _section :'suffix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"domain name", "minlen"=>"1", "maxlen"=>"255"}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"3600", "default"=>"1200", "help-string"=>"(4-3600) lifetime in seconds"}} # domain name def name prop_get('@name') end # (4-3600) lifetime in seconds def lifetime prop_get('lifetime') end # (4-3600) lifetime in seconds def lifetime=(val) prop_set('lifetime', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Suffix def suffix if @create_children @subclasses['suffix'] ||= Suffix.new(parent_instance: self, create_children: @create_children) else Suffix.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "defaule"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class DnsSupport def dns_support @subclasses['dns-support'] ||= DnsSupport.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"4", "max"=>"1800", "default"=>"600", "help-string"=> "Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "min-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"1350", "default"=>"200", "help-string"=> "Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages"}, "managed-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Managed Configuration Flag (M-bit) in Router Advertisement messages"}, "other-flag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages"}, "link-mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise", "multi-types"=> {"rangedint"=>{"min"=>"1280", "max"=>"9216"}, "enum"=>[{"value"=>"unspecified"}]}}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Reachable Time (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"3600000"}, "enum"=>[{"value"=>"unspecified"}]}}, "retransmission-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unspecified", "help-string"=> "Retransmission Timer (in milliseconds) advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"0", "max"=>"4294967295"}, "enum"=>[{"value"=>"unspecified"}]}}, "hop-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"64", "help-string"=> "Current Hop Limit advertised in Router Advertisement messages", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"255"}, "enum"=>[{"value"=>"unspecified"}]}}, "lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"9000", "default"=>"1800", "help-string"=> "Router Lifetime (in seconds) advertised in Router Advertisement messages"}, "router-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"Medium", "enum"=> [{"value"=>"High", "help-string"=>"01 High"}, {"value"=>"Medium", "help-string"=>"00 Medium"}, {"value"=>"Low", "help-string"=>"11 Low"}]}, "enable-consistency-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"check consistency of RA messages from other routers."}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval prop_get('max-interval') end # Maximum interval (seconds) between consecutive unsolicited Router Advertisement messages def max_interval=(val) prop_set('max-interval', val) end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval prop_get('min-interval') end # Minimum interval (seconds) between consecutive unsolicited Router Advertisement messages def min_interval=(val) prop_set('min-interval', val) end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag prop_get('managed-flag') end # Set the Managed Configuration Flag (M-bit) in Router Advertisement messages def managed_flag=(val) prop_set('managed-flag', val) end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag prop_get('other-flag') end # Set the Other Stateful Configuration Flag (O-bit) in Router Advertisement messages def other_flag=(val) prop_set('other-flag', val) end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu prop_get('link-mtu') end # value of MTU option in Router Advertisement messages, upto 9216 in Jumbo-Frame mode, up to 1500 otherwise def link_mtu=(val) prop_set('link-mtu', val) end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time prop_get('reachable-time') end # Reachable Time (in milliseconds) advertised in Router Advertisement messages def reachable_time=(val) prop_set('reachable-time', val) end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer prop_get('retransmission-timer') end # Retransmission Timer (in milliseconds) advertised in Router Advertisement messages def retransmission_timer=(val) prop_set('retransmission-timer', val) end # Current Hop Limit advertised in Router Advertisement messages def hop_limit prop_get('hop-limit') end # Current Hop Limit advertised in Router Advertisement messages def hop_limit=(val) prop_set('hop-limit', val) end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime prop_get('lifetime') end # Router Lifetime (in seconds) advertised in Router Advertisement messages def lifetime=(val) prop_set('lifetime', val) end def router_preference prop_get('router-preference') end def router_preference=(val) prop_set('router-preference', val) end # check consistency of RA messages from other routers. def enable_consistency_check prop_get('enable-consistency-check') end # check consistency of RA messages from other routers. def enable_consistency_check=(val) prop_set('enable-consistency-check', val) end end # class RouterAdvertisement def router_advertisement @subclasses['router-advertisement'] ||= RouterAdvertisement.new(parent_instance: self, create_children: @create_children) end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end @props={"enable-ndp-monitor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ndp monitoring"}, "enable-dad"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable duplicate address detection"}, "dad-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "default"=>"1", "help-string"=> "number of consecutive neighbor solicitation messages sent for duplicate address detection"}, "ns-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=> "interval (in seconds) between consecutive neighbor solicitation messages"}, "reachable-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"36000", "default"=>"30", "help-string"=> "time (in seconds) that the Reachable status for a neighbor can be maintained"}, "disable-nud"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"disable Neighbor Unreachability Detection"}} # enable ndp monitoring def enable_ndp_monitor prop_get('enable-ndp-monitor') end # enable ndp monitoring def enable_ndp_monitor=(val) prop_set('enable-ndp-monitor', val) end # enable duplicate address detection def enable_dad prop_get('enable-dad') end # enable duplicate address detection def enable_dad=(val) prop_set('enable-dad', val) end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts prop_get('dad-attempts') end # number of consecutive neighbor solicitation messages sent for duplicate address detection def dad_attempts=(val) prop_set('dad-attempts', val) end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval prop_get('ns-interval') end # interval (in seconds) between consecutive neighbor solicitation messages def ns_interval=(val) prop_set('ns-interval', val) end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time prop_get('reachable-time') end # time (in seconds) that the Reachable status for a neighbor can be maintained def reachable_time=(val) prop_set('reachable-time', val) end # disable Neighbor Unreachability Detection def disable_nud prop_get('disable-nud') end # disable Neighbor Unreachability Detection def disable_nud=(val) prop_set('disable-nud', val) end end # class NeighborDiscovery def neighbor_discovery @subclasses['neighbor-discovery'] ||= NeighborDiscovery.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Arp < XML::ConfigClass def has_multiple_values? true end def _section :'arp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP address"}, "hw-address"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Egress interface associated with this ARP entry", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name|#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name"]}} # IP address def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address prop_get('hw-address') end # MAC address (format xx:xx:xx:xx:xx:xx) def hw_address=(val) prop_set('hw-address', val) end # Egress interface associated with this ARP entry def interface prop_get('interface') end # Egress interface associated with this ARP entry def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Arp def arp if @create_children @subclasses['arp'] ||= Arp.new(parent_instance: self, create_children: @create_children) else Arp.new(parent_instance: self) end end class NdpProxy < ConfigClass def has_multiple_values? false end def _section :'ndp-proxy' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "negate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "max-count"=>"16", "help-string"=>"put the prefix or address on a block list"}} # IPv6 address or address object name def name prop_get('@name') end # put the prefix or address on a block list def negate prop_get('negate') end # put the prefix or address on a block list def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable proxy NDP on the interface"}} # Enable proxy NDP on the interface def enabled prop_get('enabled') end # Enable proxy NDP on the interface def enabled=(val) prop_set('enabled', val) end end # class NdpProxy def ndp_proxy @subclasses['ndp-proxy'] ||= NdpProxy.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end class SendHostname < ConfigClass def has_multiple_values? false end def _section :'send-hostname' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"system-hostname", "help-string"=>"Set Interface Hostname", "multi-types"=> {"string"=> {"regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"64", "loose-membership"=>"yes", "help-string"=>"Custom Interface Hostname"}, "enum"=> [{"value"=>"system-hostname", "help-string"=>"System Hostname"}]}}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Set Interface Hostname def hostname prop_get('hostname') end # Set Interface Hostname def hostname=(val) prop_set('hostname', val) end end # class SendHostname def send_hostname @subclasses['send-hostname'] ||= SendHostname.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "create-default-route"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Automatically create default route pointing to default gateway provided by server"}, "default-route-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric of the default route created"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Automatically create default route pointing to default gateway provided by server def create_default_route prop_get('create-default-route') end # Automatically create default route pointing to default gateway provided by server def create_default_route=(val) prop_set('create-default-route', val) end # Metric of the default route created def default_route_metric prop_get('default-route-metric') end # Metric of the default route created def default_route_metric=(val) prop_set('default-route-metric', val) end end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end class DdnsConfig < ConfigClass def has_multiple_values? false end def _section :'ddns-config' end class DdnsIp < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["../../../../ip/entry/@name", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address", "../../../../sdwan-link-settings/upstream-nat/static-ip/ip-address"], "multi-types"=> {"string"=>{"maxlen"=>"127"}, "enum"=>[{"value"=>"DHCP"}, {"value"=>"PPPoE"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIp def ddns_ip if @create_children @subclasses['ddns-ip'] ||= DdnsIp.new(parent_instance: self, create_children: @create_children) else DdnsIp.new(parent_instance: self) end end class DdnsIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-ipv6' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["../../../../ipv6/address/entry/@name", "../../../../ipv6/address/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DdnsIpv6 def ddns_ipv6 if @create_children @subclasses['ddns-ipv6'] ||= DdnsIpv6.new(parent_instance: self, create_children: @create_children) else DdnsIpv6.new(parent_instance: self) end end class DdnsVendorConfig < XML::ConfigClass def has_multiple_values? true end def _section :'ddns-vendor-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry[@name='$vnd']/content/entry/@name"]}, "value"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DdnsVendorConfig def ddns_vendor_config if @create_children @subclasses['ddns-vendor-config'] ||= DdnsVendorConfig.new(parent_instance: self, create_children: @create_children) else DdnsVendorConfig.new(parent_instance: self) end end @props={"ddns-enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ddns-update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"1", "optional"=>"yes"}, "ddns-hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\-]+$", "maxlen"=>"255"}, "ddns-cert-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name"]}, "ddns-vendor"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=> ["##/predefined/ddns-content/ddns-content-vendors/entry/@name"]}} def ddns_enabled prop_get('ddns-enabled') end def ddns_enabled=(val) prop_set('ddns-enabled', val) end def ddns_update_interval prop_get('ddns-update-interval') end def ddns_update_interval=(val) prop_set('ddns-update-interval', val) end def ddns_hostname prop_get('ddns-hostname') end def ddns_hostname=(val) prop_set('ddns-hostname', val) end def ddns_cert_profile prop_get('ddns-cert-profile') end def ddns_cert_profile=(val) prop_set('ddns-cert-profile', val) end # Vendor and product type def ddns_vendor prop_get('ddns-vendor') end # Vendor and product type def ddns_vendor=(val) prop_set('ddns-vendor', val) end end # class DdnsConfig def ddns_config @subclasses['ddns-config'] ||= DdnsConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"concat(name(../..), '.')", "regex"=>"^([ 0-9a-zA-Z./_-])+$", "help-string"=>"alphanumeric string [ 0-9a-zA-Z./_-]"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z./_-] def name prop_get('@name') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Vlan def vlan @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) end class Loopback < ConfigClass def has_multiple_values? false end def _section :'loopback' end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=> "IP address or address object name(netmask is not allowed for loopback)", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address or address object name(netmask is not allowed for loopback) def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AdjustTcpMss < ConfigClass def has_multiple_values? false end def _section :'adjust-tcp-mss' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set if TCP MSS value should be reduced based on mtu"}, "ipv4-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"40", "max"=>"300", "help-string"=>"IPv4 MSS adjustment size (in bytes)"}, "ipv6-mss-adjustment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"60", "min"=>"60", "max"=>"300", "help-string"=>"IPv6 MSS adjustment size (in bytes)"}} # Set if TCP MSS value should be reduced based on mtu def enable prop_get('enable') end # Set if TCP MSS value should be reduced based on mtu def enable=(val) prop_set('enable', val) end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment prop_get('ipv4-mss-adjustment') end # IPv4 MSS adjustment size (in bytes) def ipv4_mss_adjustment=(val) prop_set('ipv4-mss-adjustment', val) end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment prop_get('ipv6-mss-adjustment') end # IPv6 MSS adjustment size (in bytes) def ipv6_mss_adjustment=(val) prop_set('ipv6-mss-adjustment', val) end end # class AdjustTcpMss def adjust_tcp_mss @subclasses['adjust-tcp-mss'] ||= AdjustTcpMss.new(parent_instance: self, create_children: @create_children) end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=> "IP address or address object name(netmask is not allowed for loopback)", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address or address object name(netmask is not allowed for loopback) def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"string('loopback.')", "regex"=>"^((loopback\\.)?([1-9][0-9]{0,3}))$", "help-string"=>"numeric suffix [1-9999]"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # numeric suffix [1-9999] def name prop_get('@name') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Loopback def loopback @subclasses['loopback'] ||= Loopback.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address/netmask or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IP address/netmask or address object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Prefix < ConfigClass def has_multiple_values? false end def _section :'prefix' end @props={} end # class Prefix def prefix @subclasses['prefix'] ||= Prefix.new(parent_instance: self, create_children: @create_children) end class Anycast < ConfigClass def has_multiple_values? false end def _section :'anycast' end @props={} end # class Anycast def anycast @subclasses['anycast'] ||= Anycast.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^([ $0-9a-zA-Z:@./_-])+$", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IPv6 address/prefix length or address object name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "enable-on-interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"configure this address on interface"}} # IPv6 address/prefix length or address object name def name prop_get('@name') end # configure this address on interface def enable_on_interface prop_get('enable-on-interface') end # configure this address on interface def enable_on_interface=(val) prop_set('enable-on-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable IPv6 on the interface"}, "interface-id"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "optional"=>"yes", "default"=>"EUI-64", "multi-types"=> {"string"=> {"maxlen"=>"16", "loose-membership"=>"yes", "help-string"=>"user defined 64-bit identifier (in hex)"}, "enum"=> [{"value"=>"EUI-64", "help-string"=>"default 64-bit Extended Unique Identifier"}]}}} # Enable IPv6 on the interface def enabled prop_get('enabled') end # Enable IPv6 on the interface def enabled=(val) prop_set('enabled', val) end def interface_id prop_get('interface-id') end def interface_id=(val) prop_set('interface-id', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end class Bonjour < ConfigClass def has_multiple_values? false end def _section :'bonjour' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to support Bonjour service"}, "ttl-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Set to check and update TTL"}, "group-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"40", "min"=>"0", "max"=>"16", "help-string"=>"default 0: NO-Group"}} # Set to support Bonjour service def enable prop_get('enable') end # Set to support Bonjour service def enable=(val) prop_set('enable', val) end # Set to check and update TTL def ttl_check prop_get('ttl-check') end # Set to check and update TTL def ttl_check=(val) prop_set('ttl-check', val) end # default 0: NO-Group def group_id prop_get('group-id') end # default 0: NO-Group def group_id=(val) prop_set('group-id', val) end end # class Bonjour def bonjour @subclasses['bonjour'] ||= Bonjour.new(parent_instance: self, create_children: @create_children) end class Unnumbered < ConfigClass def has_multiple_values? false end def _section :'unnumbered' end @props={"source-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source interface to borrow IP from", "autocomplete"=>"yes", "memberof"=> ["#interface/ethernet/entry/layer3/units/entry/@name|#interface/ethernet/entry[layer3]/@name"]}} # Source interface to borrow IP from def source_interface prop_get('source-interface') end # Source interface to borrow IP from def source_interface=(val) prop_set('source-interface', val) end end # class Unnumbered def unnumbered @subclasses['unnumbered'] ||= Unnumbered.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"string('tunnel.')", "regex"=>"^((tunnel\\.)?([1-9][0-9]{0,3}))$", "help-string"=>"numeric string [1-9999]"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}, "link-tag"=> {"node-type"=>"element", "optional"=>"yes", "hidden"=>"yes", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["/config/shared/tag/entry/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/tag/entry/@name", "##/predefined/tag/entry/@name", "##/shared/tag/entry/@name", "#config/shared/tag/entry/@name", "#myentry(template-stack)/variable/entry[type/link-tag]/@name"]}} # numeric string [1-9999] def name prop_get('@name') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={"mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"9216", "help-string"=> "Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise"}, "interface-management-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface management profile", "autocomplete"=>"yes", "memberof"=>["#network/profiles/interface-management-profile/entry/@name"]}, "netflow-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Netflow Server Profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsys']/server-profile/netflow/entry/@name", "#config/shared/server-profile/netflow/entry/@name"]}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu prop_get('mtu') end # Maximum Transfer Unit, up to 9216 in Jumbo-Frame mode, up to 1500 otherwise def mtu=(val) prop_set('mtu', val) end # Interface management profile def interface_management_profile prop_get('interface-management-profile') end # Interface management profile def interface_management_profile=(val) prop_set('interface-management-profile', val) end # Netflow Server Profile def netflow_profile prop_get('netflow-profile') end # Netflow Server Profile def netflow_profile=(val) prop_set('netflow-profile', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Units < XML::ConfigClass def has_multiple_values? true end def _section :'units' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"9", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes') and (layer3/sdwan-link-settings/enable = 'yes')]/@name", "#myentry(devices)/network/tunnel/ipsec/entry[not(disabled = 'yes')]/tunnel-interface", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry[not(@name='$ifname')]/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "prefix"=>"string('sdwan.')", "regex"=>"^((sdwan\\.)?([1-9][0-9]{0,3}))$", "help-string"=>"numeric string [1-9999]"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}, "cluster-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"64"}, "link-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["/config/shared/tag/entry/@name", "#config/devices/entry/vsys/entry[@name='$vsysname']/tag/entry/@name", "##/predefined/tag/entry/@name", "##/shared/tag/entry/@name", "#config/shared/tag/entry/@name", "#myentry(template-stack)/variable/entry[type/link-tag]/@name"]}, "allow-saas-monitor"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "hidden"=>"yes", "help-string"=>"Allow sending probe packets for saas monitoring"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "hidden"=>"yes", "help-string"=>"Metric for relative route preference"}} # numeric string [1-9999] def name prop_get('@name') end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end def cluster_name prop_get('cluster-name') end def cluster_name=(val) prop_set('cluster-name', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end # Allow sending probe packets for saas monitoring def allow_saas_monitor prop_get('allow-saas-monitor') end # Allow sending probe packets for saas monitoring def allow_saas_monitor=(val) prop_set('allow-saas-monitor', val) end # Metric for relative route preference def metric prop_get('metric') end # Metric for relative route preference def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Units def units if @create_children @subclasses['units'] ||= Units.new(parent_instance: self, create_children: @create_children) else Units.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={} end # class Interface def interface @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) end class Ike__4 < ConfigClass def has_multiple_values? false end def _section :'ike__4' end class Gateway < XML::ConfigClass def has_multiple_values? true end def _section :'gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PeerAddress < XML::ConfigClass def has_multiple_values? true end def _section :'peer-address' end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={} end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "help-string"=>"peer gateway has static IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[('$ipv6'='yes' and contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (not('$ipv6'='yes') and ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "loose-membership"=>"yes", "help-string"=>"peer gateway FQDN name", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # peer gateway has static IP address def ip prop_get('ip') end # peer gateway has static IP address def ip=(val) prop_set('ip', val) end # peer gateway FQDN name def fqdn prop_get('fqdn') end # peer gateway FQDN name def fqdn=(val) prop_set('fqdn', val) end end # class PeerAddress def peer_address if @create_children @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) else PeerAddress.new(parent_instance: self) end end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(template-stack)/variable/entry[type/interface]/@name"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/$ifname/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/$ifname/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.vpn-srcaddr.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name[not('$ipv6'='yes')]", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name['$ipv6'='yes']"]}} # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerId < ConfigClass def has_multiple_values? false end def _section :'peer-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Peer ID string", "regex"=> "^(.+\\@[\\*a-zA-Z0-9.-]+)$|^([\\*$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "matching"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"exact", "help-string"=> "Enable peer ID wildcard match for certificate authentication", "enum"=> [{"value"=>"exact", "help-string"=>"Exact match"}, {"value"=>"wildcard", "help-string"=>"Wildcard"}]}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Peer ID string def id prop_get('id') end # Peer ID string def id=(val) prop_set('id', val) end # Enable peer ID wildcard match for certificate authentication def matching prop_get('matching') end # Enable peer ID wildcard match for certificate authentication def matching=(val) prop_set('matching', val) end end # class PeerId def peer_id @subclasses['peer-id'] ||= PeerId.new(parent_instance: self, create_children: @create_children) end class LocalId < ConfigClass def has_multiple_values? false end def _section :'local-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Local ID string", "regex"=> "^(.+\\@[a-zA-Z0-9.-]+)$|^([$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Local ID string def id prop_get('id') end # Local ID string def id=(val) prop_set('id', val) end end # class LocalId def local_id @subclasses['local-id'] ||= LocalId.new(parent_instance: self, create_children: @create_children) end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end class PreSharedKey < ConfigClass def has_multiple_values? false end def _section :'pre-shared-key' end @props={"key"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"the string used as pre-shared key", "maxlen"=>"255", "encrypt"=>"yes", "skip-commit-validation"=>"yes"}} # the string used as pre-shared key def key prop_get('key') end # the string used as pre-shared key def key=(val) prop_set('key', val) end end # class PreSharedKey def pre_shared_key @subclasses['pre-shared-key'] ||= PreSharedKey.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class LocalCertificate < ConfigClass def has_multiple_values? false end def _section :'local-certificate' end class HashAndUrl < ConfigClass def has_multiple_values? false end def _section :'hash-and-url' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Use hash-and-url for local certificate", "default"=>"no"}, "base-url"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "regex"=>"^http://.+$", "help-string"=> "The host and directory part of URL for local certificates(http only)"}} # Use hash-and-url for local certificate def enable prop_get('enable') end # Use hash-and-url for local certificate def enable=(val) prop_set('enable', val) end # The host and directory part of URL for local certificates(http only) def base_url prop_get('base-url') end # The host and directory part of URL for local certificates(http only) def base_url=(val) prop_set('base-url', val) end end # class HashAndUrl def hash_and_url @subclasses['hash-and-url'] ||= HashAndUrl.new(parent_instance: self, create_children: @create_children) end @props={"name"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Local certificate name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[@name='$vsysname']/certificate/entry[(private-key) and not(status='revoked')]/@name", "#config/shared/certificate/entry[(private-key) and not(status='revoked')]/@name", "#config/shared/certificate/entry[(private-key) and not(status='revoked')]/@name"]}} # Local certificate name def name prop_get('name') end # Local certificate name def name=(val) prop_set('name', val) end end # class LocalCertificate def local_certificate @subclasses['local-certificate'] ||= LocalCertificate.new(parent_instance: self, create_children: @create_children) end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Profile for certificate valdiation during IKE negotiation", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/vsys/entry[import/network/interface/member='$ifname']/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}, "use-management-as-source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Use management interface IP as source to retrieve http certificates"}, "strict-validation-revocation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable strict validation of peer's extended key use"}, "allow-id-payload-mismatch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Permit peer identification and certificate payload identification mismatch"}} # Profile for certificate valdiation during IKE negotiation def certificate_profile prop_get('certificate-profile') end # Profile for certificate valdiation during IKE negotiation def certificate_profile=(val) prop_set('certificate-profile', val) end # Use management interface IP as source to retrieve http certificates def use_management_as_source prop_get('use-management-as-source') end # Use management interface IP as source to retrieve http certificates def use_management_as_source=(val) prop_set('use-management-as-source', val) end # Enable strict validation of peer's extended key use def strict_validation_revocation prop_get('strict-validation-revocation') end # Enable strict validation of peer's extended key use def strict_validation_revocation=(val) prop_set('strict-validation-revocation', val) end # Permit peer identification and certificate payload identification mismatch def allow_id_payload_mismatch prop_get('allow-id-payload-mismatch') end # Permit peer identification and certificate payload identification mismatch def allow_id_payload_mismatch=(val) prop_set('allow-id-payload-mismatch', val) end end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class Ikev1 < ConfigClass def has_multiple_values? false end def _section :'ikev1' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable Dead-Peer-Detection", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}, "retry"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"number of retries before disconnection", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable Dead-Peer-Detection def enable prop_get('enable') end # Enable Dead-Peer-Detection def enable=(val) prop_set('enable', val) end # sending interval for probing packets (in seconds) def interval prop_get('interval') end # sending interval for probing packets (in seconds) def interval=(val) prop_set('interval', val) end # number of retries before disconnection def retry prop_get('retry') end # number of retries before disconnection def retry=(val) prop_set('retry', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"exchange-mode"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"Exchange mode", "default"=>"auto", "optional"=>"yes", "enum"=> [{"value"=>"auto", "help-string"=>"choose IKE exchange mode automatically"}, {"value"=>"main", "help-string"=>"use main mode"}, {"value"=>"aggressive", "help-string"=>"use aggressive mode"}]}, "ike-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "loose-membership"=>"yes", "help-string"=>"IKE SA crypto profile name", "default"=>"default", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ike-crypto-profiles/entry/@name"]}, "commit-bit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send commit bit", "disabled"=>"yes"}, "initial-contact"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send initial contact", "disabled"=>"yes"}} # Exchange mode def exchange_mode prop_get('exchange-mode') end # Exchange mode def exchange_mode=(val) prop_set('exchange-mode', val) end # IKE SA crypto profile name def ike_crypto_profile prop_get('ike-crypto-profile') end # IKE SA crypto profile name def ike_crypto_profile=(val) prop_set('ike-crypto-profile', val) end # Send commit bit def commit_bit prop_get('commit-bit') end # Send commit bit def commit_bit=(val) prop_set('commit-bit', val) end # Send initial contact def initial_contact prop_get('initial-contact') end # Send initial contact def initial_contact=(val) prop_set('initial-contact', val) end end # class Ikev1 def ikev1 @subclasses['ikev1'] ||= Ikev1.new(parent_instance: self, create_children: @create_children) end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable sending empty information liveness check message", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"delay interval before sending probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable sending empty information liveness check message def enable prop_get('enable') end # Enable sending empty information liveness check message def enable=(val) prop_set('enable', val) end # delay interval before sending probing packets (in seconds) def interval prop_get('interval') end # delay interval before sending probing packets (in seconds) def interval=(val) prop_set('interval', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"ike-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "loose-membership"=>"yes", "help-string"=>"IKE SA crypto profile name", "default"=>"default", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ike-crypto-profiles/entry/@name"]}, "require-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Require cookie", "default"=>"no"}, "send-peer-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send peer ID", "default"=>"yes", "disabled"=>"yes"}} # IKE SA crypto profile name def ike_crypto_profile prop_get('ike-crypto-profile') end # IKE SA crypto profile name def ike_crypto_profile=(val) prop_set('ike-crypto-profile', val) end # Require cookie def require_cookie prop_get('require-cookie') end # Require cookie def require_cookie=(val) prop_set('require-cookie', val) end # Send peer ID def send_peer_id prop_get('send-peer-id') end # Send peer ID def send_peer_id=(val) prop_set('send-peer-id', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={"version"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"IKE protocol version", "default"=>"ikev1", "enum"=> [{"value"=>"ikev1", "help-string"=>"IKEv1 only mode"}, {"value"=>"ikev2", "help-string"=>"IKEv2 only mode"}, {"value"=>"ikev2-preferred", "help-string"=>"IKEv2 preferred mode"}]}} # IKE protocol version def version prop_get('version') end # IKE protocol version def version=(val) prop_set('version', val) end end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class ProtocolCommon < ConfigClass def has_multiple_values? false end def _section :'protocol-common' end class NatTraversal < ConfigClass def has_multiple_values? false end def _section :'nat-traversal' end @props={"enable"=> {"node-type"=>"element", "help-string"=>"Enable NAT-Traversal", "type"=>"bool", "default"=>"no"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for NAT keep-alive packets (in seconds)", "type"=>"rangedint", "min"=>"10", "max"=>"3600", "default"=>"20"}, "udp-checksum-enable"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enable UDP checksum", "type"=>"bool", "default"=>"no"}} # Enable NAT-Traversal def enable prop_get('enable') end # Enable NAT-Traversal def enable=(val) prop_set('enable', val) end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Enable UDP checksum def udp_checksum_enable prop_get('udp-checksum-enable') end # Enable UDP checksum def udp_checksum_enable=(val) prop_set('udp-checksum-enable', val) end end # class NatTraversal def nat_traversal @subclasses['nat-traversal'] ||= NatTraversal.new(parent_instance: self, create_children: @create_children) end class Fragmentation < ConfigClass def has_multiple_values? false end def _section :'fragmentation' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable IKE fragmentation", "default"=>"no"}} # Enable IKE fragmentation def enable prop_get('enable') end # Enable IKE fragmentation def enable=(val) prop_set('enable', val) end end # class Fragmentation def fragmentation @subclasses['fragmentation'] ||= Fragmentation.new(parent_instance: self, create_children: @create_children) end @props={"passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable passive mode (responder only)", "default"=>"no"}} # Enable passive mode (responder only) def passive_mode prop_get('passive-mode') end # Enable passive mode (responder only) def passive_mode=(val) prop_set('passive-mode', val) end end # class ProtocolCommon def protocol_common @subclasses['protocol-common'] ||= ProtocolCommon.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the IKE gateway"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the IKE gateway"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the IKE gateway def disabled prop_get('disabled') end # Disable the IKE gateway def disabled=(val) prop_set('disabled', val) end # use IPv6 for the IKE gateway def ipv6 prop_get('ipv6') end # use IPv6 for the IKE gateway def ipv6=(val) prop_set('ipv6', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gateway def gateway if @create_children @subclasses['gateway'] ||= Gateway.new(parent_instance: self, create_children: @create_children) else Gateway.new(parent_instance: self) end end class CryptoProfiles < ConfigClass def has_multiple_values? false end def _section :'crypto-profiles' end class IkeCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ike-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 56-bit strength"}, {"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 112-bit strength"}, {"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Hash < XML::ConfigClass def has_multiple_values? true end def _section :'hash' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha1", "enum"=> [{"value"=>"non-auth", "help-string"=>"Integrity check is unnecessary when AESGCM is chosen"}, {"value"=>"md5", "prune-on"=>"fips-mode", "help-string"=>"below 80-bit strength"}, {"value"=>"sha1", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hash def hash if @create_children @subclasses['hash'] ||= Hash.new(parent_instance: self, create_children: @create_children) else Hash.new(parent_instance: self) end end class DhGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dh-group' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"group2", "enum"=> [{"value"=>"group1", "prune-on"=>"fips-mode", "help-string"=>"768-bit MODP Group"}, {"value"=>"group2", "prune-on"=>"fips-mode", "help-string"=>"1024-bit MODP Group, NIST rating 80-bit strength"}, {"value"=>"group5", "prune-on"=>"fips-mode", "help-string"=>"1536-bit MODP Group"}, {"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhGroup def dh_group if @create_children @subclasses['dh-group'] ||= DhGroup.new(parent_instance: self, create_children: @create_children) else DhGroup.new(parent_instance: self) end end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"8"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "authentication-multiple"=> {"node-type"=>"element", "help-string"=> "IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled", "type"=>"rangedint", "max"=>"50", "optional"=>"yes", "default"=>"0"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple prop_get('authentication-multiple') end # IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple=(val) prop_set('authentication-multiple', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IkeCryptoProfiles def ike_crypto_profiles if @create_children @subclasses['ike-crypto-profiles'] ||= IkeCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IkeCryptoProfiles.new(parent_instance: self) end end class IpsecCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 56-bit strength"}, {"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"NIST rating 112-bit strength"}, {"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-ccm", "help-string"=>"NIST rating 128-bit strength, AES CCM 16"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}, {"value"=>"null", "prune-on"=>"fips-mode"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"sha1", "complete-handler"=>"esp-auth-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha1", "enum"=> [{"value"=>"md5", "prune-on"=>"fips-mode", "help-string"=>"below 80-bit strength"}, {"value"=>"sha1", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end class Lifesize < XML::ConfigClass def has_multiple_values? true end def _section :'lifesize' end @props={"kb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in kilobytes(KB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "mb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in megabytes(MB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "gb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in gigabytes(GB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "tb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in terabytes(TB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}} # specify lifesize in kilobytes(KB) def kb prop_get('kb') end # specify lifesize in kilobytes(KB) def kb=(val) prop_set('kb', val) end # specify lifesize in megabytes(MB) def mb prop_get('mb') end # specify lifesize in megabytes(MB) def mb=(val) prop_set('mb', val) end # specify lifesize in gigabytes(GB) def gb prop_get('gb') end # specify lifesize in gigabytes(GB) def gb=(val) prop_set('gb', val) end # specify lifesize in terabytes(TB) def tb prop_get('tb') end # specify lifesize in terabytes(TB) def tb=(val) prop_set('tb', val) end end # class Lifesize def lifesize if @create_children @subclasses['lifesize'] ||= Lifesize.new(parent_instance: self, create_children: @create_children) else Lifesize.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "dh-group"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"phase-2 DH group (PFS DH group)", "optional"=>"yes", "default"=>"group2", "enum"=> [{"value"=>"no-pfs", "prune-on"=>"fips-mode", "help-string"=>"disable PFS feature"}, {"value"=>"group1", "prune-on"=>"fips-mode", "help-string"=>"768-bit MODP Group"}, {"value"=>"group2", "prune-on"=>"fips-mode", "help-string"=>"1024-bit MODP Group, NIST rating 80-bit strength"}, {"value"=>"group5", "prune-on"=>"fips-mode", "help-string"=>"1536-bit MODP Group"}, {"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # phase-2 DH group (PFS DH group) def dh_group prop_get('dh-group') end # phase-2 DH group (PFS DH group) def dh_group=(val) prop_set('dh-group', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpsecCryptoProfiles def ipsec_crypto_profiles if @create_children @subclasses['ipsec-crypto-profiles'] ||= IpsecCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IpsecCryptoProfiles.new(parent_instance: self) end end class GlobalProtectAppCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-app-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha1", "enum"=>[{"value"=>"sha1", "help-string"=>"NIST rating 128-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectAppCryptoProfiles def global_protect_app_crypto_profiles if @create_children @subclasses['global-protect-app-crypto-profiles'] ||= GlobalProtectAppCryptoProfiles.new(parent_instance: self, create_children: @create_children) else GlobalProtectAppCryptoProfiles.new(parent_instance: self) end end @props={} end # class CryptoProfiles def crypto_profiles @subclasses['crypto-profiles'] ||= CryptoProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ike__4 def ike__4 @subclasses['ike__4'] ||= Ike__4.new(parent_instance: self, create_children: @create_children) end class Tunnel__5 < ConfigClass def has_multiple_values? false end def _section :'tunnel__5' end class Hop < XML::ConfigClass def has_multiple_values? true end def _section :'hop' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Tunnel peer IP address"}} # Tunnel peer IP address def ip prop_get('ip') end # Tunnel peer IP address def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to termate tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address if interface has multiple addresses"}} # Interface to termate tunnel def interface prop_get('interface') end # Interface to termate tunnel def interface=(val) prop_set('interface', val) end # IP address if interface has multiple addresses def ip prop_get('ip') end # IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Tunnel interface to bind", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(template-stack)/variable/entry[type/interface]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Tunnel interface to bind def tunnel_interface prop_get('tunnel-interface') end # Tunnel interface to bind def tunnel_interface=(val) prop_set('tunnel-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Hop def hop if @create_children @subclasses['hop'] ||= Hop.new(parent_instance: self, create_children: @create_children) else Hop.new(parent_instance: self) end end class Gre < XML::ConfigClass def has_multiple_values? true end def _section :'gre' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to terminate tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(template-stack)/variable/entry[type/interface]/@name"]}, "ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.tunnel.gre.local-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Interface to terminate tunnel def interface prop_get('interface') end # Interface to terminate tunnel def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Peer IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Peer IP address def ip prop_get('ip') end # Peer IP address def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class KeepAlive < ConfigClass def has_multiple_values? false end def _section :'keep-alive' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable tunnel monitoring on this tunnel"}, "interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"50", "default"=>"10", "help-string"=>"Interval"}, "retry"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"64", "default"=>"3", "help-string"=>"Retry"}, "hold-timer"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"64", "default"=>"5", "help-string"=>"Hold timer"}} # Enable tunnel monitoring on this tunnel def enable prop_get('enable') end # Enable tunnel monitoring on this tunnel def enable=(val) prop_set('enable', val) end # Interval def interval prop_get('interval') end # Interval def interval=(val) prop_set('interval', val) end # Retry def retry prop_get('retry') end # Retry def retry=(val) prop_set('retry', val) end # Hold timer def hold_timer prop_get('hold-timer') end # Hold timer def hold_timer=(val) prop_set('hold-timer', val) end end # class KeepAlive def keep_alive @subclasses['keep-alive'] ||= KeepAlive.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the GRE tunnel"}, "copy-tos"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Copy IP TOS bits from inner packet to GRE packet"}, "ttl"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"255", "default"=>"64", "help-string"=>"TTL"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"to apply GRE tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(template-stack)/variable/entry[type/interface]/@name"]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the GRE tunnel def disabled prop_get('disabled') end # Disable the GRE tunnel def disabled=(val) prop_set('disabled', val) end # Copy IP TOS bits from inner packet to GRE packet def copy_tos prop_get('copy-tos') end # Copy IP TOS bits from inner packet to GRE packet def copy_tos=(val) prop_set('copy-tos', val) end # TTL def ttl prop_get('ttl') end # TTL def ttl=(val) prop_set('ttl', val) end # to apply GRE tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply GRE tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gre def gre if @create_children @subclasses['gre'] ||= Gre.new(parent_instance: self, create_children: @create_children) else Gre.new(parent_instance: self) end end class Ipsec < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TunnelMonitor < ConfigClass def has_multiple_values? false end def _section :'tunnel-monitor' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Enable tunnel monitoring on this tunnel"}, "destination-ip"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Destination IP to send ICMP probe", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "proxy-id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Which proxy-id (or proxy-id-v6) the monitoring traffic will use", "autocomplete"=>"yes", "memberof"=> ["../../../auto-key/proxy-id/entry/@name[not(contains('$ipv6', ':'))]", "../../../auto-key/proxy-id-v6/entry/@name[contains('$ipv6', ':')]"]}, "tunnel-monitor-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"monitoring action", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/monitor-profile/entry/@name"]}} # Enable tunnel monitoring on this tunnel def enable prop_get('enable') end # Enable tunnel monitoring on this tunnel def enable=(val) prop_set('enable', val) end # Destination IP to send ICMP probe def destination_ip prop_get('destination-ip') end # Destination IP to send ICMP probe def destination_ip=(val) prop_set('destination-ip', val) end # Which proxy-id (or proxy-id-v6) the monitoring traffic will use def proxy_id prop_get('proxy-id') end # Which proxy-id (or proxy-id-v6) the monitoring traffic will use def proxy_id=(val) prop_set('proxy-id', val) end # monitoring action def tunnel_monitor_profile prop_get('tunnel-monitor-profile') end # monitoring action def tunnel_monitor_profile=(val) prop_set('tunnel-monitor-profile', val) end end # class TunnelMonitor def tunnel_monitor @subclasses['tunnel-monitor'] ||= TunnelMonitor.new(parent_instance: self, create_children: @create_children) end class AutoKey < ConfigClass def has_multiple_values? false end def _section :'auto-key' end class IkeGateway < XML::ConfigClass def has_multiple_values? true end def _section :'ike-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"IKE gateway name", "autocomplete"=>"yes", "memberof"=> ["#network/ike/gateway/entry[(ipv6='$ipv6') or (not('$ipv6') and not(ipv6='yes')) or (not(ipv6) and not('$ipv6'='yes'))]/@name"]}, "as-nexthop"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "optional"=>"yes", "help-string"=> "manually register this IKE gateway as the given nexthop value"}} # IKE gateway name def name prop_get('@name') end # manually register this IKE gateway as the given nexthop value def as_nexthop prop_get('as-nexthop') end # manually register this IKE gateway as the given nexthop value def as_nexthop=(val) prop_set('as-nexthop', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IkeGateway def ike_gateway if @create_children @subclasses['ike-gateway'] ||= IkeGateway.new(parent_instance: self, create_children: @create_children) else IkeGateway.new(parent_instance: self) end end class ProxyId < XML::ConfigClass def has_multiple_values? true end def _section :'proxy-id' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={"number"=> {"node-type"=>"element", "help-string"=>"IP protocol number", "type"=>"rangedint", "min"=>"1", "max"=>"254", "no-default"=>"yes"}} # IP protocol number def number prop_get('number') end # IP protocol number def number=(val) prop_set('number', val) end end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents local network", "type"=>"multiple", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "remote"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents remote network", "type"=>"multiple", "ipv4-only"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # IP subnet or IP address represents local network def local prop_get('local') end # IP subnet or IP address represents local network def local=(val) prop_set('local', val) end # IP subnet or IP address represents remote network def remote prop_get('remote') end # IP subnet or IP address represents remote network def remote=(val) prop_set('remote', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProxyId def proxy_id if @create_children @subclasses['proxy-id'] ||= ProxyId.new(parent_instance: self, create_children: @create_children) else ProxyId.new(parent_instance: self) end end class ProxyIdV6 < XML::ConfigClass def has_multiple_values? true end def _section :'proxy-id-v6' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Any < ConfigClass def has_multiple_values? false end def _section :'any' end @props={} end # class Any def any @subclasses['any'] ||= Any.new(parent_instance: self, create_children: @create_children) end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}, "remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "default"=>"0", "optional"=>"yes"}} def local_port prop_get('local-port') end def local_port=(val) prop_set('local-port', val) end def remote_port prop_get('remote-port') end def remote_port=(val) prop_set('remote-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={"number"=> {"node-type"=>"element", "help-string"=>"IP protocol number", "type"=>"rangedint", "min"=>"1", "max"=>"254", "no-default"=>"yes"}} # IP protocol number def number prop_get('number') end # IP protocol number def number=(val) prop_set('number', val) end end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents local network", "type"=>"multiple", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "remote"=> {"node-type"=>"element", "help-string"=>"IP subnet or IP address represents remote network", "type"=>"multiple", "ipv6-only"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # IP subnet or IP address represents local network def local prop_get('local') end # IP subnet or IP address represents local network def local=(val) prop_set('local', val) end # IP subnet or IP address represents remote network def remote prop_get('remote') end # IP subnet or IP address represents remote network def remote=(val) prop_set('remote', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProxyIdV6 def proxy_id_v6 if @create_children @subclasses['proxy-id-v6'] ||= ProxyIdV6.new(parent_instance: self, create_children: @create_children) else ProxyIdV6.new(parent_instance: self) end end @props={"ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "loose-membership"=>"yes", "help-string"=>"IPSec crypto profile name", "optional"=>"yes", "default"=>"default", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ipsec-crypto-profiles/entry/@name"]}} # IPSec crypto profile name def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # IPSec crypto profile name def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end end # class AutoKey def auto_key @subclasses['auto-key'] ||= AutoKey.new(parent_instance: self, create_children: @create_children) end class ManualKey < ConfigClass def has_multiple_values? false end def _section :'manual-key' end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Tunnel peer IP address"}} # Tunnel peer IP address def ip prop_get('ip') end # Tunnel peer IP address def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to termate tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(template-stack)/variable/entry[type/interface]/@name"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/$ifname/ip/entry/@name[not('$ipv6'='yes')]", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name[not('$ipv6'='yes')]", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/$ifname/ipv6/address/entry/@name['$ipv6'='yes']", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name['$ipv6'='yes']"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=>"cfg.platform.vm.vpn-srcaddr.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name[not('$ipv6'='yes')]", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name['$ipv6'='yes']"]}} # Interface to termate tunnel def interface prop_get('interface') end # Interface to termate tunnel def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections", "regex"=>"^([0-9a-fA-F]{8}-){3}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections", "regex"=>"^([0-9a-fA-F]{8}-){4}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections", "regex"=>"^([0-9a-fA-F]{8}-){7}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections", "regex"=>"^([0-9a-fA-F]{8}-){11}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections", "regex"=>"^([0-9a-fA-F]{8}-){15}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end class None__6 < ConfigClass def has_multiple_values? false end def _section :'none__6' end @props={} end # class None__6 def none__6 @subclasses['none__6'] ||= None__6.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"algorithm"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"des", "prune-on"=>"cc-only-mode", "help-string"=>"key is 64 bit"}, {"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"key is 192 bit"}, {"value"=>"aes-128-cbc", "help-string"=>"key is 128 bit"}, {"value"=>"aes-192-cbc", "help-string"=>"key is 192 bit"}, {"value"=>"aes-256-cbc", "help-string"=>"key is 256 bit"}, {"value"=>"null", "prune-on"=>"fips-mode"}]}, "key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=> "hex format xxxxxxxx[-xxxxxxxx]... total number of sections: des: 2, 3des: 6, aes-128-cbc: 4, aes-192-cbc: 6, aes-256-cbc: 8", "regex"=> "^([0-9a-fA-F]{8}-[0-9a-fA-F]{8}-){0,3}[0-9a-fA-F]{8}-[0-9a-fA-F]{8}$"}} def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: des: 2, 3des: 6, aes-128-cbc: 4, aes-192-cbc: 6, aes-256-cbc: 8 def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: des: 2, 3des: 6, aes-128-cbc: 4, aes-192-cbc: 6, aes-256-cbc: 8 def key=(val) prop_set('key', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections", "regex"=>"^([0-9a-fA-F]{8}-){3}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections", "regex"=>"^([0-9a-fA-F]{8}-){4}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections", "regex"=>"^([0-9a-fA-F]{8}-){7}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections", "regex"=>"^([0-9a-fA-F]{8}-){11}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections", "regex"=>"^([0-9a-fA-F]{8}-){15}[0-9a-fA-F]{8}$"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end @props={"local-spi"=> {"node-type"=>"element", "help-string"=> "Outbound SPI, hex format xxxxxxxx. range 00001000 to 1FFFFFFF", "type"=>"string", "regex"=> "^(0000[1-9a-fA-F]{1}[0-9a-fA-F]{3}|000[1-9a-fA-F]{1}[0-9a-fA-F]{4}|00[1-9a-fA-F]{1}[0-9a-fA-F]{5}|0[1-9a-fA-F]{1}[0-9a-fA-F]{6}|1[0-9a-fA-F]{7})$"}, "remote-spi"=> {"node-type"=>"element", "help-string"=>"Inbound SPI, hex format xxxxxxxx.", "type"=>"string", "regex"=>"^([0-9a-fA-F]{8})$"}} # Outbound SPI, hex format xxxxxxxx. range 00001000 to 1FFFFFFF def local_spi prop_get('local-spi') end # Outbound SPI, hex format xxxxxxxx. range 00001000 to 1FFFFFFF def local_spi=(val) prop_set('local-spi', val) end # Inbound SPI, hex format xxxxxxxx. def remote_spi prop_get('remote-spi') end # Inbound SPI, hex format xxxxxxxx. def remote_spi=(val) prop_set('remote-spi', val) end end # class ManualKey def manual_key @subclasses['manual-key'] ||= ManualKey.new(parent_instance: self, create_children: @create_children) end class GlobalProtectSatellite < ConfigClass def has_multiple_values? false end def _section :'global-protect-satellite' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact local IPv6 address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/$ifname/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name"]}} # specify exact IP address if interface has multiple addresses def ipv4 prop_get('ipv4') end # specify exact IP address if interface has multiple addresses def ipv4=(val) prop_set('ipv4', val) end # specify exact local IPv6 address if interface has multiple addresses def ipv6 prop_get('ipv6') end # specify exact local IPv6 address if interface has multiple addresses def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.tunnel.ipsec.floating-ip.satd-floating-ip-check.ipv4-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IPv6 address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IP address in HA Active-Active configuration def ipv4 prop_get('ipv4') end # Floating IP address in HA Active-Active configuration def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address in HA Active-Active configuration def ipv6 prop_get('ipv6') end # Floating IPv6 address in HA Active-Active configuration def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to communicate with Portal", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}} # Interface to communicate with Portal def interface prop_get('interface') end # Interface to communicate with Portal def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PublishRoutes < XML::ConfigClass def has_multiple_values? true end def _section :'publish-routes' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "subnet-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PublishRoutes def publish_routes if @create_children @subclasses['publish-routes'] ||= PublishRoutes.new(parent_instance: self, create_children: @create_children) else PublishRoutes.new(parent_instance: self) end end class PublishConnectedRoutes < ConfigClass def has_multiple_values? false end def _section :'publish-connected-routes' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable publishing of connected and static routes"}} # Enable publishing of connected and static routes def enable prop_get('enable') end # Enable publishing of connected and static routes def enable=(val) prop_set('enable', val) end end # class PublishConnectedRoutes def publish_connected_routes @subclasses['publish-connected-routes'] ||= PublishConnectedRoutes.new(parent_instance: self, create_children: @create_children) end class ExternalCa < ConfigClass def has_multiple_values? false end def _section :'external-ca' end @props={"local-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"GlobalProtect satellite certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Profile for authenticating GlobalProtect gateway certificates", "autocomplete"=>"yes", "memberof"=>["#config/shared/certificate-profile/entry/@name"]}} # GlobalProtect satellite certificate file name def local_certificate prop_get('local-certificate') end # GlobalProtect satellite certificate file name def local_certificate=(val) prop_set('local-certificate', val) end # Profile for authenticating GlobalProtect gateway certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating GlobalProtect gateway certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class ExternalCa def external_ca @subclasses['external-ca'] ||= ExternalCa.new(parent_instance: self, create_children: @create_children) end @props={"portal-address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"GlobalProtect portal address"}, "ipv6-preferred"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Prefer to register to portal in ipv6. Only applicable to fqdn portal-address"}} # GlobalProtect portal address def portal_address prop_get('portal-address') end # GlobalProtect portal address def portal_address=(val) prop_set('portal-address', val) end # Prefer to register to portal in ipv6. Only applicable to fqdn portal-address def ipv6_preferred prop_get('ipv6-preferred') end # Prefer to register to portal in ipv6. Only applicable to fqdn portal-address def ipv6_preferred=(val) prop_set('ipv6-preferred', val) end end # class GlobalProtectSatellite def global_protect_satellite @subclasses['global-protect-satellite'] ||= GlobalProtectSatellite.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the IPSec tunnel"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the IPSec tunnel"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"to apply IPSec VPN tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "anti-replay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable Anti-Replay check on this tunnel"}, "copy-tos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Copy IP TOS bits from inner packet to IPSec packet (not recommended)"}, "copy-flow-label"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Copy IPv6 flow label for 6in6 tunnel from inner packet to IPSec packet (not recommended)"}, "enable-gre-encapsulation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"allow GRE over IPSec"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the IPSec tunnel def disabled prop_get('disabled') end # Disable the IPSec tunnel def disabled=(val) prop_set('disabled', val) end # use IPv6 for the IPSec tunnel def ipv6 prop_get('ipv6') end # use IPv6 for the IPSec tunnel def ipv6=(val) prop_set('ipv6', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end # to apply IPSec VPN tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply IPSec VPN tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end # Enable Anti-Replay check on this tunnel def anti_replay prop_get('anti-replay') end # Enable Anti-Replay check on this tunnel def anti_replay=(val) prop_set('anti-replay', val) end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos prop_get('copy-tos') end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos=(val) prop_set('copy-tos', val) end # Copy IPv6 flow label for 6in6 tunnel from inner packet to IPSec packet (not recommended) def copy_flow_label prop_get('copy-flow-label') end # Copy IPv6 flow label for 6in6 tunnel from inner packet to IPSec packet (not recommended) def copy_flow_label=(val) prop_set('copy-flow-label', val) end # allow GRE over IPSec def enable_gre_encapsulation prop_get('enable-gre-encapsulation') end # allow GRE over IPSec def enable_gre_encapsulation=(val) prop_set('enable-gre-encapsulation', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ipsec def ipsec if @create_children @subclasses['ipsec'] ||= Ipsec.new(parent_instance: self, create_children: @create_children) else Ipsec.new(parent_instance: self) end end class GlobalProtectGateway < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/$ifname/ipv6/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name"]}} # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IP address def ipv4 prop_get('ipv4') end # Floating IP address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class Ipsec < ConfigClass def has_multiple_values? false end def _section :'ipsec' end class ThirdPartyClient__2 < ConfigClass def has_multiple_values? false end def _section :'third-party-client__2' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable thrid party client support"}, "group-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"group name"}, "group-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "encrypt"=>"yes", "help-string"=>"group password"}, "rekey-noauth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Skip Auth on IKE Rekey"}} # Enable thrid party client support def enable prop_get('enable') end # Enable thrid party client support def enable=(val) prop_set('enable', val) end # group name def group_name prop_get('group-name') end # group name def group_name=(val) prop_set('group-name', val) end # group password def group_password prop_get('group-password') end # group password def group_password=(val) prop_set('group-password', val) end # Skip Auth on IKE Rekey def rekey_noauth prop_get('rekey-noauth') end # Skip Auth on IKE Rekey def rekey_noauth=(val) prop_set('rekey-noauth', val) end end # class ThirdPartyClient__2 def third_party_client__2 @subclasses['third-party-client__2'] ||= ThirdPartyClient__2.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable IPSec"}, "server-udp-port"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535", "default"=>"4501", "help-string"=> "the port number used to send/receive IPSec over UDP traffic on GlobalProtect gateway side"}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"IPSec crypto profile name", "default"=>"default", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/global-protect-app-crypto-profiles/entry/@name"]}} # Enable IPSec def enable prop_get('enable') end # Enable IPSec def enable=(val) prop_set('enable', val) end # the port number used to send/receive IPSec over UDP traffic on GlobalProtect gateway side def server_udp_port prop_get('server-udp-port') end # the port number used to send/receive IPSec over UDP traffic on GlobalProtect gateway side def server_udp_port=(val) prop_set('server-udp-port', val) end # IPSec crypto profile name def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # IPSec crypto profile name def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end end # class Ipsec def ipsec @subclasses['ipsec'] ||= Ipsec.new(parent_instance: self, create_children: @create_children) end class Ssl < ConfigClass def has_multiple_values? false end def _section :'ssl' end @props={"server-port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535", "default"=>"443", "help-string"=> "the port number used to send/receive SSL traffic on GlobalProtect gateway side"}} # the port number used to send/receive SSL traffic on GlobalProtect gateway side def server_port prop_get('server-port') end # the port number used to send/receive SSL traffic on GlobalProtect gateway side def server_port=(val) prop_set('server-port', val) end end # class Ssl def ssl @subclasses['ssl'] ||= Ssl.new(parent_instance: self, create_children: @create_children) end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class Client < ConfigClass def has_multiple_values? false end def _section :'client' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3/pppoe]/@name", "#network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/vlan/units/entry[dhcp-client]/@name", "name(../../../../../../../interface/vlan[dhcp-client])", "#network/interface/aggregate-ethernet/entry[layer3/dhcp-client]/@name|#network/interface/aggregate-ethernet/entry/layer3/units/entry[dhcp-client]/@name", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class DnsServer < ConfigClass def has_multiple_values? false end def _section :'dns-server' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # DNS primary server ip address def primary prop_get('primary') end # DNS primary server ip address def primary=(val) prop_set('primary', val) end # DNS secondary server ip address def secondary prop_get('secondary') end # DNS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class DnsServer def dns_server @subclasses['dns-server'] ||= DnsServer.new(parent_instance: self, create_children: @create_children) end class WinsServer < ConfigClass def has_multiple_values? false end def _section :'wins-server' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # WINS primary server ip address def primary prop_get('primary') end # WINS primary server ip address def primary=(val) prop_set('primary', val) end # WINS secondary server ip address def secondary prop_get('secondary') end # WINS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class WinsServer def wins_server @subclasses['wins-server'] ||= WinsServer.new(parent_instance: self, create_children: @create_children) end class DnsSuffix < XML::ConfigClass def has_multiple_values? true end def _section :'dns-suffix' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"DNS suffix for client"}} # DNS suffix for client def member prop_get('member') end # DNS suffix for client def member=(val) prop_set('member', val) end end # class DnsSuffix def dns_suffix if @create_children @subclasses['dns-suffix'] ||= DnsSuffix.new(parent_instance: self, create_children: @create_children) else DnsSuffix.new(parent_instance: self) end end class ExcludeVideoTraffic < ConfigClass def has_multiple_values? false end def _section :'exclude-video-traffic' end class Applications < XML::ConfigClass def has_multiple_values? true end def _section :'applications' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"200", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[(not(video-type='yes')) and ((technology='browser-based') or (use-applications/member='web-browsing'))]/@name", "##/predefined/application/entry[video-type='yes']/@name", "##/predefined/application-container/entry[(not(video-type='yes')) and ((technology='browser-based') or (use-applications/member='web-browsing'))]/@name", "##/predefined/application-container/entry[video-type='yes']/@name", "#config/shared/application/entry[(technology='browser-based') or (use-applications/member='web-browsing')]/@name", "#config/shared/content-preview/application/entry[(technology='browser-based') or (use-applications/member='web-browsing')]/@name", "#myentry(vsys)/application/entry[(technology='browser-based') or (use-applications/member='web-browsing')]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Applications def applications if @create_children @subclasses['applications'] ||= Applications.new(parent_instance: self, create_children: @create_children) else Applications.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Enable exclude video traffic"}} # Enable exclude video traffic def enabled prop_get('enabled') end # Enable exclude video traffic def enabled=(val) prop_set('enabled', val) end end # class ExcludeVideoTraffic def exclude_video_traffic @subclasses['exclude-video-traffic'] ||= ExcludeVideoTraffic.new(parent_instance: self, create_children: @create_children) end @props={"dns-suffix-inherited"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Enable dns-suffix inheritance from dynamic interface"}} # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited prop_get('dns-suffix-inherited') end # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited=(val) prop_set('dns-suffix-inherited', val) end end # class Client def client @subclasses['client'] ||= Client.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"33", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [ 0-9a-zA-Z._-]"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"to apply GlobalProtect gateway tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "max-user"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "platform-max"=>"cfg.general.max-ssl-tunnel", "help-string"=>"max number of concurrent logined users"}} # alphanumeric string begin with letter: [ 0-9a-zA-Z._-] def name prop_get('@name') end # to apply GlobalProtect gateway tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply GlobalProtect gateway tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end # max number of concurrent logined users def max_user prop_get('max-user') end # max number of concurrent logined users def max_user=(val) prop_set('max-user', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectGateway def global_protect_gateway if @create_children @subclasses['global-protect-gateway'] ||= GlobalProtectGateway.new(parent_instance: self, create_children: @create_children) else GlobalProtectGateway.new(parent_instance: self) end end class GlobalProtectSiteToSite < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-site-to-site' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/$ifname/ipv6/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name"]}} # IPv4 address def ipv4 prop_get('ipv4') end # IPv4 address def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IP address def ipv4 prop_get('ipv4') end # Floating IP address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class Client < ConfigClass def has_multiple_values? false end def _section :'client' end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3/pppoe]/@name", "#network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#network/interface/vlan/units/entry[dhcp-client]/@name", "name(../../../../../../../interface/vlan[dhcp-client])", "#network/interface/aggregate-ethernet/entry[layer3/dhcp-client]/@name|#network/interface/aggregate-ethernet/entry/layer3/units/entry[dhcp-client]/@name", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class DnsServer < ConfigClass def has_multiple_values? false end def _section :'dns-server' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # DNS primary server ip address def primary prop_get('primary') end # DNS primary server ip address def primary=(val) prop_set('primary', val) end # DNS secondary server ip address def secondary prop_get('secondary') end # DNS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class DnsServer def dns_server @subclasses['dns-server'] ||= DnsServer.new(parent_instance: self, create_children: @create_children) end class DnsSuffix < XML::ConfigClass def has_multiple_values? true end def _section :'dns-suffix' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"DNS suffix for client"}} # DNS suffix for client def member prop_get('member') end # DNS suffix for client def member=(val) prop_set('member', val) end end # class DnsSuffix def dns_suffix if @create_children @subclasses['dns-suffix'] ||= DnsSuffix.new(parent_instance: self, create_children: @create_children) else DnsSuffix.new(parent_instance: self) end end class SplitTunneling < ConfigClass def has_multiple_values? false end def _section :'split-tunneling' end class AccessRoute < XML::ConfigClass def has_multiple_values? true end def _section :'access-route' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AccessRoute def access_route if @create_children @subclasses['access-route'] ||= AccessRoute.new(parent_instance: self, create_children: @create_children) else AccessRoute.new(parent_instance: self) end end @props={} end # class SplitTunneling def split_tunneling @subclasses['split-tunneling'] ||= SplitTunneling.new(parent_instance: self, create_children: @create_children) end class TunnelMonitor < ConfigClass def has_multiple_values? false end def _section :'tunnel-monitor' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Enable tunnel monitoring on this tunnel"}, "destination-ip"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Destination IP to send ICMP probe", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "destination-ipv6"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Destination IPv6 to send ICMP probe", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "tunnel-monitor-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"monitoring action", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#network/profiles/monitor-profile/entry/@name"]}} # Enable tunnel monitoring on this tunnel def enable prop_get('enable') end # Enable tunnel monitoring on this tunnel def enable=(val) prop_set('enable', val) end # Destination IP to send ICMP probe def destination_ip prop_get('destination-ip') end # Destination IP to send ICMP probe def destination_ip=(val) prop_set('destination-ip', val) end # Destination IPv6 to send ICMP probe def destination_ipv6 prop_get('destination-ipv6') end # Destination IPv6 to send ICMP probe def destination_ipv6=(val) prop_set('destination-ipv6', val) end # monitoring action def tunnel_monitor_profile prop_get('tunnel-monitor-profile') end # monitoring action def tunnel_monitor_profile=(val) prop_set('tunnel-monitor-profile', val) end end # class TunnelMonitor def tunnel_monitor @subclasses['tunnel-monitor'] ||= TunnelMonitor.new(parent_instance: self, create_children: @create_children) end class ValidNetworks < XML::ConfigClass def has_multiple_values? true end def _section :'valid-networks' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "subnet-only"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ValidNetworks def valid_networks if @create_children @subclasses['valid-networks'] ||= ValidNetworks.new(parent_instance: self, create_children: @create_children) else ValidNetworks.new(parent_instance: self) end end @props={"config-refresh-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"48", "default"=>"2", "help-string"=> "GlobalProtect gateway configuration refresh interval in hours"}, "dns-suffix-inherited"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Enable dns-suffix inheritance from dynamic interface"}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"IPSec crypto profile name", "default"=>"default", "autocomplete"=>"yes", "memberof"=> ["#network/ike/crypto-profiles/ipsec-crypto-profiles/entry[not(esp/encryption/member='des')]/@name"]}, "accept-published-routes"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "Whether Gateway should accept routes published by Satellite"}, "anti-replay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable Anti-Replay check on this tunnel"}, "copy-tos"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Copy IP TOS bits from inner packet to IPSec packet (not recommended)"}} # GlobalProtect gateway configuration refresh interval in hours def config_refresh_interval prop_get('config-refresh-interval') end # GlobalProtect gateway configuration refresh interval in hours def config_refresh_interval=(val) prop_set('config-refresh-interval', val) end # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited prop_get('dns-suffix-inherited') end # Enable dns-suffix inheritance from dynamic interface def dns_suffix_inherited=(val) prop_set('dns-suffix-inherited', val) end # IPSec crypto profile name def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # IPSec crypto profile name def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end # Whether Gateway should accept routes published by Satellite def accept_published_routes prop_get('accept-published-routes') end # Whether Gateway should accept routes published by Satellite def accept_published_routes=(val) prop_set('accept-published-routes', val) end # Enable Anti-Replay check on this tunnel def anti_replay prop_get('anti-replay') end # Enable Anti-Replay check on this tunnel def anti_replay=(val) prop_set('anti-replay', val) end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos prop_get('copy-tos') end # Copy IP TOS bits from inner packet to IPSec packet (not recommended) def copy_tos=(val) prop_set('copy-tos', val) end end # class Client def client @subclasses['client'] ||= Client.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"33", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [ 0-9a-zA-Z._-]"}, "tunnel-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "to apply GlobalProtect site to site tunnels to tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} # alphanumeric string begin with letter: [ 0-9a-zA-Z._-] def name prop_get('@name') end # to apply GlobalProtect site to site tunnels to tunnel interface def tunnel_interface prop_get('tunnel-interface') end # to apply GlobalProtect site to site tunnels to tunnel interface def tunnel_interface=(val) prop_set('tunnel-interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectSiteToSite def global_protect_site_to_site if @create_children @subclasses['global-protect-site-to-site'] ||= GlobalProtectSiteToSite.new(parent_instance: self, create_children: @create_children) else GlobalProtectSiteToSite.new(parent_instance: self) end end @props={} end # class Tunnel__5 def tunnel__5 @subclasses['tunnel__5'] ||= Tunnel__5.new(parent_instance: self, create_children: @create_children) end class Vlan < XML::ConfigClass def has_multiple_values? true end def _section :'vlan' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"30", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=>["../../../../interface/member"]}} # MAC address (format xx:xx:xx:xx:xx:xx) def name prop_get('@name') end # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class VirtualInterface < ConfigClass def has_multiple_values? false end def _section :'virtual-interface' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Virtual interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/vlan/units/entry/@name", "string('vlan')", "string('vlan')"]}} # Virtual interface def interface prop_get('interface') end # Virtual interface def interface=(val) prop_set('interface', val) end end # class VirtualInterface def virtual_interface @subclasses['virtual-interface'] ||= VirtualInterface.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vlan def vlan if @create_children @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) else Vlan.new(parent_instance: self) end end class Qos < ConfigClass def has_multiple_values? false end def _section :'qos' end class Profile < XML::ConfigClass def has_multiple_values? true end def _section :'profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AggregateBandwidth < ConfigClass def has_multiple_values? false end def _section :'aggregate-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class AggregateBandwidth def aggregate_bandwidth @subclasses['aggregate-bandwidth'] ||= AggregateBandwidth.new(parent_instance: self, create_children: @create_children) end class ClassBandwidthType < XML::ConfigClass def has_multiple_values? true end def _section :'class-bandwidth-type' end class Mbps < ConfigClass def has_multiple_values? false end def _section :'mbps' end class Class < XML::ConfigClass def has_multiple_values? true end def _section :'class' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ClassBandwidth < ConfigClass def has_multiple_values? false end def _section :'class-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class ClassBandwidth def class_bandwidth @subclasses['class-bandwidth'] ||= ClassBandwidth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"traffic class", "autocomplete"=>"yes", "memberof"=> ["string('class1')", "string('class2')", "string('class3')", "string('class4')", "string('class5')", "string('class6')", "string('class7')", "string('class8')", "string('class8')"]}, "priority"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"medium", "help-string"=>"traffic class priority", "enum"=> [{"value"=>"real-time", "help-string"=>"highest priority"}, {"value"=>"high", "help-string"=>"high priority"}, {"value"=>"medium", "help-string"=>"medium priority"}, {"value"=>"low", "help-string"=>"low priority"}]}, "round-trip-time"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"1000", "default"=>"20", "help-string"=> "estimated average round trip time (in milli-seconds) for network path"}} # traffic class def name prop_get('@name') end # traffic class priority def priority prop_get('priority') end # traffic class priority def priority=(val) prop_set('priority', val) end # estimated average round trip time (in milli-seconds) for network path def round_trip_time prop_get('round-trip-time') end # estimated average round trip time (in milli-seconds) for network path def round_trip_time=(val) prop_set('round-trip-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Class def class if @create_children @subclasses['class'] ||= Class.new(parent_instance: self, create_children: @create_children) else Class.new(parent_instance: self) end end @props={} end # class Mbps def mbps @subclasses['mbps'] ||= Mbps.new(parent_instance: self, create_children: @create_children) end class Percentage < ConfigClass def has_multiple_values? false end def _section :'percentage' end class Class < XML::ConfigClass def has_multiple_values? true end def _section :'class' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ClassBandwidth < ConfigClass def has_multiple_values? false end def _section :'class-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"0", "help-string"=>"max sending bandwidth percentage"}, "egress-guaranteed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"100", "default"=>"0", "help-string"=>"guaranteed sending bandwidth percentage"}} # max sending bandwidth percentage def egress_max prop_get('egress-max') end # max sending bandwidth percentage def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth percentage def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth percentage def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class ClassBandwidth def class_bandwidth @subclasses['class-bandwidth'] ||= ClassBandwidth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"traffic class", "autocomplete"=>"yes", "memberof"=> ["string('class1')", "string('class2')", "string('class3')", "string('class4')", "string('class5')", "string('class6')", "string('class7')", "string('class8')", "string('class8')"]}, "priority"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"medium", "help-string"=>"traffic class priority", "enum"=> [{"value"=>"real-time", "help-string"=>"highest priority"}, {"value"=>"high", "help-string"=>"high priority"}, {"value"=>"medium", "help-string"=>"medium priority"}, {"value"=>"low", "help-string"=>"low priority"}]}, "round-trip-time"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"1000", "default"=>"20", "help-string"=> "estimated average round trip time (in milli-seconds) for network path"}} # traffic class def name prop_get('@name') end # traffic class priority def priority prop_get('priority') end # traffic class priority def priority=(val) prop_set('priority', val) end # estimated average round trip time (in milli-seconds) for network path def round_trip_time prop_get('round-trip-time') end # estimated average round trip time (in milli-seconds) for network path def round_trip_time=(val) prop_set('round-trip-time', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Class def class if @create_children @subclasses['class'] ||= Class.new(parent_instance: self, create_children: @create_children) else Class.new(parent_instance: self) end end @props={} end # class Percentage def percentage @subclasses['percentage'] ||= Percentage.new(parent_instance: self, create_children: @create_children) end @props={} end # class ClassBandwidthType def class_bandwidth_type if @create_children @subclasses['class-bandwidth-type'] ||= ClassBandwidthType.new(parent_instance: self, create_children: @create_children) else ClassBandwidthType.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Profile def profile if @create_children @subclasses['profile'] ||= Profile.new(parent_instance: self, create_children: @create_children) else Profile.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class InterfaceBandwidth < ConfigClass def has_multiple_values? false end def _section :'interface-bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "complete-handler"=>"sdwan-emax-completer", "type"=>"multiple", "optional"=>"yes", "default"=>"0", "help-string"=>"max bandwidth in mbps", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/egress-max]/@name", "#myentry(template-stack)/variable/entry[type/egress-max]/@name"], "multi-types"=> {"float"=>{"min"=>"0", "max"=>"60000"}, "string"=>{"maxlen"=>"63"}}}} # max bandwidth in mbps def egress_max prop_get('egress-max') end # max bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end end # class InterfaceBandwidth def interface_bandwidth @subclasses['interface-bandwidth'] ||= InterfaceBandwidth.new(parent_instance: self, create_children: @create_children) end class TunnelTraffic < ConfigClass def has_multiple_values? false end def _section :'tunnel-traffic' end class Groups < XML::ConfigClass def has_multiple_values? true end def _section :'groups' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"tunnel interface", "autocomplete"=>"yes", "memberof"=> ["#network/tunnel/ipsec/entry/tunnel-interface", "#network/tunnel/global-protect-gateway/entry/tunnel-interface", "#network/tunnel/global-protect-site-to-site/entry/tunnel-interface"]}, "qos-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "apply QoS profile for traffic go through the tunnel interface", "autocomplete"=>"yes", "memberof"=>["#network/qos/profile/entry/@name"]}} # tunnel interface def name prop_get('@name') end # apply QoS profile for traffic go through the tunnel interface def qos_profile prop_get('qos-profile') end # apply QoS profile for traffic go through the tunnel interface def qos_profile=(val) prop_set('qos-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"tunnel traffic group", "enum"=> [{"value"=>"tunnel-traffic-group", "help-string"=>"the pre-defined group for tunnel traffic"}]}} # tunnel traffic group def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Groups def groups if @create_children @subclasses['groups'] ||= Groups.new(parent_instance: self, create_children: @create_children) else Groups.new(parent_instance: self) end end class DefaultGroup < ConfigClass def has_multiple_values? false end def _section :'default-group' end @props={"per-tunnel-qos-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "apply QoS profile for traffic go through each tunnel interface", "autocomplete"=>"yes", "memberof"=>["#network/qos/profile/entry/@name"]}} # apply QoS profile for traffic go through each tunnel interface def per_tunnel_qos_profile prop_get('per-tunnel-qos-profile') end # apply QoS profile for traffic go through each tunnel interface def per_tunnel_qos_profile=(val) prop_set('per-tunnel-qos-profile', val) end end # class DefaultGroup def default_group @subclasses['default-group'] ||= DefaultGroup.new(parent_instance: self, create_children: @create_children) end class Bandwidth < ConfigClass def has_multiple_values? false end def _section :'bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class Bandwidth def bandwidth @subclasses['bandwidth'] ||= Bandwidth.new(parent_instance: self, create_children: @create_children) end @props={} end # class TunnelTraffic def tunnel_traffic @subclasses['tunnel-traffic'] ||= TunnelTraffic.new(parent_instance: self, create_children: @create_children) end class RegularTraffic < ConfigClass def has_multiple_values? false end def _section :'regular-traffic' end class Groups < XML::ConfigClass def has_multiple_values? true end def _section :'groups' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "max-count"=>"1", "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"local side interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer3/units/entry/@name|#network/interface/ethernet/entry/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name|#network/interface/aggregate-ethernet/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "destination_interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"destination interface", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/virtual-wire/units/entry/@name|#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name|#network/interface/ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name|#network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer3]/@name"]}} # local side interface def interface prop_get('interface') end # local side interface def interface=(val) prop_set('interface', val) end # destination interface def destination_interface prop_get('destination_interface') end # destination interface def destination_interface=(val) prop_set('destination_interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"name of this QoS member entity"}, "qos-profile"=> {"node-type"=>"element", "complete-handler"=>"qos-profile-mbps-completer", "type"=>"string", "help-string"=> "apply QoS profile for traffic go through the group of hosts"}} # name of this QoS member entity def name prop_get('@name') end # apply QoS profile for traffic go through the group of hosts def qos_profile prop_get('qos-profile') end # apply QoS profile for traffic go through the group of hosts def qos_profile=(val) prop_set('qos-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"regular traffic group", "enum"=> [{"value"=>"regular-traffic-group", "help-string"=>"the pre-defined group for regular traffic"}]}} # regular traffic group def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Groups def groups if @create_children @subclasses['groups'] ||= Groups.new(parent_instance: self, create_children: @create_children) else Groups.new(parent_instance: self) end end class DefaultGroup < ConfigClass def has_multiple_values? false end def _section :'default-group' end @props={"qos-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"apply QoS profile for aggregated traffic", "autocomplete"=>"yes", "memberof"=> ["#network/qos/profile/entry/@name", "#myentry(template-stack)/variable/entry[type/qos-profile]/@name"]}} # apply QoS profile for aggregated traffic def qos_profile prop_get('qos-profile') end # apply QoS profile for aggregated traffic def qos_profile=(val) prop_set('qos-profile', val) end end # class DefaultGroup def default_group @subclasses['default-group'] ||= DefaultGroup.new(parent_instance: self, create_children: @create_children) end class Bandwidth < ConfigClass def has_multiple_values? false end def _section :'bandwidth' end @props={"egress-max"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"max sending bandwidth in mbps"}, "egress-guaranteed"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"60000", "platform-max"=>"cfg.general.max-qosbw", "default"=>"0", "help-string"=>"guaranteed sending bandwidth in mbps"}} # max sending bandwidth in mbps def egress_max prop_get('egress-max') end # max sending bandwidth in mbps def egress_max=(val) prop_set('egress-max', val) end # guaranteed sending bandwidth in mbps def egress_guaranteed prop_get('egress-guaranteed') end # guaranteed sending bandwidth in mbps def egress_guaranteed=(val) prop_set('egress-guaranteed', val) end end # class Bandwidth def bandwidth @subclasses['bandwidth'] ||= Bandwidth.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegularTraffic def regular_traffic @subclasses['regular-traffic'] ||= RegularTraffic.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^([\\$]?[a-zA-Z0-9:@./_-])+$", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/ethernet/entry[layer2]/@name", "#network/interface/ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(template-stack)/variable/entry[type/interface]/@name"]}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on QoS feature on this interface"}} # Interface name def name prop_get('@name') end # Turn on QoS feature on this interface def enabled prop_get('enabled') end # Turn on QoS feature on this interface def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class Qos def qos @subclasses['qos'] ||= Qos.new(parent_instance: self, create_children: @create_children) end class SpanningTree < XML::ConfigClass def has_multiple_values? true end def _section :'spanning-tree' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Port < XML::ConfigClass def has_multiple_values? true end def _section :'port' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Switch port name", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer2/units/entry/@name|#network/interface/ethernet/entry[layer2]/@name", "#network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#network/interface/aggregate-ethernet/entry[layer2]/@name"]}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Port priority"}, "cost"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Port cost"}, "link-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "help-string"=>"Port link type", "enum"=> [{"value"=>"auto", "help-string"=>"Automatically detect edge port"}, {"value"=>"edge", "help-string"=>"Edge port"}, {"value"=>"point-to-point", "help-string"=>"Point-to-point link"}]}} # Switch port name def name prop_get('@name') end # Port priority def priority prop_get('priority') end # Port priority def priority=(val) prop_set('priority', val) end # Port cost def cost prop_get('cost') end # Port cost def cost=(val) prop_set('cost', val) end # Port link type def link_type prop_get('link-type') end # Port link type def link_type=(val) prop_set('link-type', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Port def port if @create_children @subclasses['port'] ||= Port.new(parent_instance: self, create_children: @create_children) else Port.new(parent_instance: self) end end class Time < ConfigClass def has_multiple_values? false end def _section :'time' end @props={"hello-time"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"2", "default"=>"2", "help-string"=>"Hello Time (in seconds)"}, "max-age"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"6", "max"=>"40", "default"=>"20", "help-string"=>"Max Age (in seconds)"}, "forward-delay"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"4", "max"=>"30", "default"=>"15", "help-string"=>"Forward Delay (in seconds)"}} # Hello Time (in seconds) def hello_time prop_get('hello-time') end # Hello Time (in seconds) def hello_time=(val) prop_set('hello-time', val) end # Max Age (in seconds) def max_age prop_get('max-age') end # Max Age (in seconds) def max_age=(val) prop_set('max-age', val) end # Forward Delay (in seconds) def forward_delay prop_get('forward-delay') end # Forward Delay (in seconds) def forward_delay=(val) prop_set('forward-delay', val) end end # class Time def time @subclasses['time'] ||= Time.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "vlan"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"VLAN of the instance", "autocomplete"=>"yes", "memberof"=>["#network/vlan/entry/@name", "#network/vlan/entry/@name"]}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"rstp", "help-string"=>"Rapid Spanning Tree Protocol"}, {"value"=>"per-vlan-rstp", "help-string"=>"Per-VLAN Rapid Spanning Tree"}]}, "bridge-priority"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"65535", "default"=>"32768", "help-string"=>"Bridge priority"}, "port-priority"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Default port priority within this instance"}, "port-cost"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"256", "default"=>"32", "help-string"=>"Default port cost within this instance"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # VLAN of the instance def vlan prop_get('vlan') end # VLAN of the instance def vlan=(val) prop_set('vlan', val) end def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end # Bridge priority def bridge_priority prop_get('bridge-priority') end # Bridge priority def bridge_priority=(val) prop_set('bridge-priority', val) end # Default port priority within this instance def port_priority prop_get('port-priority') end # Default port priority within this instance def port_priority=(val) prop_set('port-priority', val) end # Default port cost within this instance def port_cost prop_get('port-cost') end # Default port cost within this instance def port_cost=(val) prop_set('port-cost', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SpanningTree def spanning_tree if @create_children @subclasses['spanning-tree'] ||= SpanningTree.new(parent_instance: self, create_children: @create_children) else SpanningTree.new(parent_instance: self) end end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MulticastFirewalling < ConfigClass def has_multiple_values? false end def _section :'multicast-firewalling' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable firewalling for non-unicast traffic", "default"=>"no"}} # Enable firewalling for non-unicast traffic def enable prop_get('enable') end # Enable firewalling for non-unicast traffic def enable=(val) prop_set('enable', val) end end # class MulticastFirewalling def multicast_firewalling @subclasses['multicast-firewalling'] ||= MulticastFirewalling.new(parent_instance: self, create_children: @create_children) end class LinkStatePassThrough < ConfigClass def has_multiple_values? false end def _section :'link-state-pass-through' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable link state passthrough", "default"=>"yes"}} # Enable link state passthrough def enable prop_get('enable') end # Enable link state passthrough def enable=(val) prop_set('enable', val) end end # class LinkStatePassThrough def link_state_pass_through @subclasses['link-state-pass-through'] ||= LinkStatePassThrough.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "interface1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Interface 1", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/virtual-wire/units/entry/@name|#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name"]}, "interface2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Interface 2", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/virtual-wire/units/entry/@name|#network/interface/ethernet/entry[virtual-wire]/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name"]}, "tag-allowed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangelistspec", "min"=>"0", "max"=>"4094", "help-string"=>"Allowed 802.1q VLAN tags", "prune-on-sdb"=>"cfg.platform.vm.virtual-wire.tag-allowed-disable=True"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Interface 1 def interface1 prop_get('interface1') end # Interface 1 def interface1=(val) prop_set('interface1', val) end # Interface 2 def interface2 prop_get('interface2') end # Interface 2 def interface2=(val) prop_set('interface2', val) end # Allowed 802.1q VLAN tags def tag_allowed prop_get('tag-allowed') end # Allowed 802.1q VLAN tags def tag_allowed=(val) prop_set('tag-allowed', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class VirtualRouter < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')", "#network/interface/sdwan/units/entry/@name", "string('sdwan')", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class RoutingTable < ConfigClass def has_multiple_values? false end def _section :'routing-table' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Receive < ConfigClass def has_multiple_values? false end def _section :'receive' end @props={} end # class Receive def receive @subclasses['receive'] ||= Receive.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN address object configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "next-vr"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Next hop virtual router", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-router/entry/@name"]}, "tunnel"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Forward packet through tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/tunnel/hop/entry/@name", "#network/tunnel/ipsec/entry/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN address object configuration def fqdn prop_get('fqdn') end # nexthop address FQDN address object configuration def fqdn=(val) prop_set('fqdn', val) end # Next hop virtual router def next_vr prop_get('next-vr') end # Next hop virtual router def next_vr=(val) prop_set('next-vr', val) end # Forward packet through tunnel def tunnel prop_get('tunnel') end # Forward packet through tunnel def tunnel=(val) prop_set('tunnel', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class RouteTable < ConfigClass def has_multiple_values? false end def _section :'route-table' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end class Multicast < ConfigClass def has_multiple_values? false end def _section :'multicast' end @props={} end # class Multicast def multicast @subclasses['multicast'] ||= Multicast.new(parent_instance: self, create_children: @create_children) end class Both < ConfigClass def has_multiple_values? false end def _section :'both' end @props={} end # class Both def both @subclasses['both'] ||= Both.new(parent_instance: self, create_children: @create_children) end class NoInstall < ConfigClass def has_multiple_values? false end def _section :'no-install' end @props={} end # class NoInstall def no_install @subclasses['no-install'] ||= NoInstall.new(parent_instance: self, create_children: @create_children) end @props={} end # class RouteTable def route_table @subclasses['route-table'] ||= RouteTable.new(parent_instance: self, create_children: @create_children) end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"DHCP", "help-string"=>"Use DHCP Client address"}]}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/interface/member", "string('sd_wan')"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Receive < ConfigClass def has_multiple_values? false end def _section :'receive' end @props={} end # class Receive def receive @subclasses['receive'] ||= Receive.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ipv6-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "next-vr"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Next hop virtual router", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/virtual-router/entry/@name"]}, "tunnel"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Forward packet through tunnel", "autocomplete"=>"yes", "memberof"=> ["#network/tunnel/hop/entry/@name", "#network/tunnel/ipsec/entry/@name"]}} # Next hop IP address def ipv6_address prop_get('ipv6-address') end # Next hop IP address def ipv6_address=(val) prop_set('ipv6-address', val) end # Next hop virtual router def next_vr prop_get('next-vr') end # Next hop virtual router def next_vr=(val) prop_set('next-vr', val) end # Forward packet through tunnel def tunnel prop_get('tunnel') end # Forward packet through tunnel def tunnel=(val) prop_set('tunnel', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end class Passive < ConfigClass def has_multiple_values? false end def _section :'passive' end @props={} end # class Passive def passive @subclasses['passive'] ||= Passive.new(parent_instance: self, create_children: @create_children) end @props={} end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class RouteTable < ConfigClass def has_multiple_values? false end def _section :'route-table' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end class NoInstall < ConfigClass def has_multiple_values? false end def _section :'no-install' end @props={} end # class NoInstall def no_install @subclasses['no-install'] ||= NoInstall.new(parent_instance: self, create_children: @create_children) end @props={} end # class RouteTable def route_table @subclasses['route-table'] ||= RouteTable.new(parent_instance: self, create_children: @create_children) end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name"], "multi-types"=>{"string"=>{}}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class RoutingTable def routing_table @subclasses['routing-table'] ||= RoutingTable.new(parent_instance: self, create_children: @create_children) end class Multicast < ConfigClass def has_multiple_values? false end def _section :'multicast' end class InterfaceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'interface-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class GroupPermission < ConfigClass def has_multiple_values? false end def _section :'group-permission' end class AnySourceMulticast < XML::ConfigClass def has_multiple_values? true end def _section :'any-source-multicast' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"rule name"}, "group-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"group-address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "included"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"included"}} # rule name def name prop_get('@name') end # group-address/prefix def group_address prop_get('group-address') end # group-address/prefix def group_address=(val) prop_set('group-address', val) end # included def included prop_get('included') end # included def included=(val) prop_set('included', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AnySourceMulticast def any_source_multicast if @create_children @subclasses['any-source-multicast'] ||= AnySourceMulticast.new(parent_instance: self, create_children: @create_children) else AnySourceMulticast.new(parent_instance: self) end end class SourceSpecificMulticast < XML::ConfigClass def has_multiple_values? true end def _section :'source-specific-multicast' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"rule name"}, "group-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"group-address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "source-address"=> {"node-type"=>"element", "type"=>"multiple", "ipv4-only"=>"yes", "help-string"=>"source-address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}, "included"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"included"}} # rule name def name prop_get('@name') end # group-address/prefix def group_address prop_get('group-address') end # group-address/prefix def group_address=(val) prop_set('group-address', val) end # source-address/prefix def source_address prop_get('source-address') end # source-address/prefix def source_address=(val) prop_set('source-address', val) end # included def included prop_get('included') end # included def included=(val) prop_set('included', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SourceSpecificMulticast def source_specific_multicast if @create_children @subclasses['source-specific-multicast'] ||= SourceSpecificMulticast.new(parent_instance: self, create_children: @create_children) else SourceSpecificMulticast.new(parent_instance: self) end end @props={} end # class GroupPermission def group_permission @subclasses['group-permission'] ||= GroupPermission.new(parent_instance: self, create_children: @create_children) end class Igmp < ConfigClass def has_multiple_values? false end def _section :'igmp' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable IGMP"}, "version"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"3", "help-string"=>"IGMP version number", "enum"=>[{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}]}, "mode"=> {"node-type"=>"element", "optional"=>"yes", "disabled"=>"yes", "type"=>"multiple", "default"=>"router", "help-string"=>"IGMP mode", "multi-types"=>{"enum"=>[{"value"=>"router"}, {"value"=>"host"}]}}, "max-query-response-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "default"=>"10", "min"=>"0", "max"=>"3174.4", "help-string"=> "maximum query response time for general group membership queries in seconds"}, "query-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"125", "min"=>"1", "max"=>"31744", "help-string"=>"interval between group/source specific query messages"}, "last-member-query-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "default"=>"1", "min"=>"0.1", "max"=>"3174.4", "help-string"=> "interval between group/source specific query messages (including those sent in response of leave group messages)"}, "immediate-leave"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"leave group immediately when a leave message is received"}, "robustness"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"2", "help-string"=>"robustness variable", "enum"=> [{"value"=>"1"}, {"value"=>"2"}, {"value"=>"3"}, {"value"=>"4"}, {"value"=>"5"}, {"value"=>"6"}, {"value"=>"7"}]}, "max-groups"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unlimited", "help-string"=>"maximum number of groups allowed on this interface", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535"}, "enum"=>[{"value"=>"unlimited"}]}}, "max-sources"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"unlimited", "help-string"=> "maximum number of source-specific memberships allowed on this interface", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535"}, "enum"=>[{"value"=>"unlimited"}]}}, "router-alert-policing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"drop IGMP packets without Router Alert option"}} # enable IGMP def enable prop_get('enable') end # enable IGMP def enable=(val) prop_set('enable', val) end # IGMP version number def version prop_get('version') end # IGMP version number def version=(val) prop_set('version', val) end # IGMP mode def mode prop_get('mode') end # IGMP mode def mode=(val) prop_set('mode', val) end # maximum query response time for general group membership queries in seconds def max_query_response_time prop_get('max-query-response-time') end # maximum query response time for general group membership queries in seconds def max_query_response_time=(val) prop_set('max-query-response-time', val) end # interval between group/source specific query messages def query_interval prop_get('query-interval') end # interval between group/source specific query messages def query_interval=(val) prop_set('query-interval', val) end # interval between group/source specific query messages (including those sent in response of leave group messages) def last_member_query_interval prop_get('last-member-query-interval') end # interval between group/source specific query messages (including those sent in response of leave group messages) def last_member_query_interval=(val) prop_set('last-member-query-interval', val) end # leave group immediately when a leave message is received def immediate_leave prop_get('immediate-leave') end # leave group immediately when a leave message is received def immediate_leave=(val) prop_set('immediate-leave', val) end # robustness variable def robustness prop_get('robustness') end # robustness variable def robustness=(val) prop_set('robustness', val) end # maximum number of groups allowed on this interface def max_groups prop_get('max-groups') end # maximum number of groups allowed on this interface def max_groups=(val) prop_set('max-groups', val) end # maximum number of source-specific memberships allowed on this interface def max_sources prop_get('max-sources') end # maximum number of source-specific memberships allowed on this interface def max_sources=(val) prop_set('max-sources', val) end # drop IGMP packets without Router Alert option def router_alert_policing prop_get('router-alert-policing') end # drop IGMP packets without Router Alert option def router_alert_policing=(val) prop_set('router-alert-policing', val) end end # class Igmp def igmp @subclasses['igmp'] ||= Igmp.new(parent_instance: self, create_children: @create_children) end class Pim < ConfigClass def has_multiple_values? false end def _section :'pim' end class AllowedNeighbors < XML::ConfigClass def has_multiple_values? true end def _section :'allowed-neighbors' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"ip address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AllowedNeighbors def allowed_neighbors if @create_children @subclasses['allowed-neighbors'] ||= AllowedNeighbors.new(parent_instance: self, create_children: @create_children) else AllowedNeighbors.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "assert-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65534", "default"=>"177", "help-string"=>"interval between PIM Assert messages, in seconds"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"18000", "default"=>"30", "help-string"=> "interval between PIM Hello messages, in seconds, a value of 0 represents an 'infinite' interval"}, "join-prune-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"18000", "default"=>"60", "help-string"=>"interval between PIM Join/Prune messages, in seconds"}, "dr-priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"1", "help-string"=>"Designated Router priority"}, "bsr-border"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"interface is bootstrap border"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # interval between PIM Assert messages, in seconds def assert_interval prop_get('assert-interval') end # interval between PIM Assert messages, in seconds def assert_interval=(val) prop_set('assert-interval', val) end # interval between PIM Hello messages, in seconds, a value of 0 represents an 'infinite' interval def hello_interval prop_get('hello-interval') end # interval between PIM Hello messages, in seconds, a value of 0 represents an 'infinite' interval def hello_interval=(val) prop_set('hello-interval', val) end # interval between PIM Join/Prune messages, in seconds def join_prune_interval prop_get('join-prune-interval') end # interval between PIM Join/Prune messages, in seconds def join_prune_interval=(val) prop_set('join-prune-interval', val) end # Designated Router priority def dr_priority prop_get('dr-priority') end # Designated Router priority def dr_priority=(val) prop_set('dr-priority', val) end # interface is bootstrap border def bsr_border prop_get('bsr-border') end # interface is bootstrap border def bsr_border=(val) prop_set('bsr-border', val) end end # class Pim def pim @subclasses['pim'] ||= Pim.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"interface group name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # interface group name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class InterfaceGroup def interface_group if @create_children @subclasses['interface-group'] ||= InterfaceGroup.new(parent_instance: self, create_children: @create_children) else InterfaceGroup.new(parent_instance: self) end end class SsmAddressSpace < XML::ConfigClass def has_multiple_values? true end def _section :'ssm-address-space' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"rule name"}, "group-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"group-address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"ipv4-only"=>"yes", "multicast-only"=>"yes", "default"=>"232.0.0.0/8"}, "string"=>{"maxlen"=>"63"}}}, "included"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"included"}} # rule name def name prop_get('@name') end # group-address/prefix def group_address prop_get('group-address') end # group-address/prefix def group_address=(val) prop_set('group-address', val) end # included def included prop_get('included') end # included def included=(val) prop_set('included', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SsmAddressSpace def ssm_address_space if @create_children @subclasses['ssm-address-space'] ||= SsmAddressSpace.new(parent_instance: self, create_children: @create_children) else SsmAddressSpace.new(parent_instance: self) end end class SptThreshold < XML::ConfigClass def has_multiple_values? true end def _section :'spt-threshold' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"multicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "threshold"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"0", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"data rate (kbps) at which a SPT switch is triggered"}, "enum"=> [{"value"=>"never", "help-string"=>"do not switch to spt"}, {"value"=>"0", "help-string"=>"switch on first data packet"}]}}} def name prop_get('@name') end def threshold prop_get('threshold') end def threshold=(val) prop_set('threshold', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SptThreshold def spt_threshold if @create_children @subclasses['spt-threshold'] ||= SptThreshold.new(parent_instance: self, create_children: @create_children) else SptThreshold.new(parent_instance: self) end end class Rp < ConfigClass def has_multiple_values? false end def _section :'rp' end class LocalRp < ConfigClass def has_multiple_values? false end def _section :'local-rp' end class StaticRp < ConfigClass def has_multiple_values? false end def _section :'static-rp' end class GroupAddresses < XML::ConfigClass def has_multiple_values? true end def _section :'group-addresses' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupAddresses def group_addresses if @create_children @subclasses['group-addresses'] ||= GroupAddresses.new(parent_instance: self, create_children: @create_children) else GroupAddresses.new(parent_instance: self) end end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"local RP interface", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"local RP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "override"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Override learned RP for the same group"}} # local RP interface def interface prop_get('interface') end # local RP interface def interface=(val) prop_set('interface', val) end # local RP address def address prop_get('address') end # local RP address def address=(val) prop_set('address', val) end # Override learned RP for the same group def override prop_get('override') end # Override learned RP for the same group def override=(val) prop_set('override', val) end end # class StaticRp def static_rp @subclasses['static-rp'] ||= StaticRp.new(parent_instance: self, create_children: @create_children) end class CandidateRp < ConfigClass def has_multiple_values? false end def _section :'candidate-rp' end class GroupAddresses < XML::ConfigClass def has_multiple_values? true end def _section :'group-addresses' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupAddresses def group_addresses if @create_children @subclasses['group-addresses'] ||= GroupAddresses.new(parent_instance: self, create_children: @create_children) else GroupAddresses.new(parent_instance: self) end end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"candidate RP interface", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"candidate RP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"192", "help-string"=>"The priority for this candidate rt"}, "advertisement-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"26214", "default"=>"60", "help-string"=> "The time interval in seconds between candidate rp advertisements"}} # candidate RP interface def interface prop_get('interface') end # candidate RP interface def interface=(val) prop_set('interface', val) end # candidate RP address def address prop_get('address') end # candidate RP address def address=(val) prop_set('address', val) end # The priority for this candidate rt def priority prop_get('priority') end # The priority for this candidate rt def priority=(val) prop_set('priority', val) end # The time interval in seconds between candidate rp advertisements def advertisement_interval prop_get('advertisement-interval') end # The time interval in seconds between candidate rp advertisements def advertisement_interval=(val) prop_set('advertisement-interval', val) end end # class CandidateRp def candidate_rp @subclasses['candidate-rp'] ||= CandidateRp.new(parent_instance: self, create_children: @create_children) end @props={} end # class LocalRp def local_rp @subclasses['local-rp'] ||= LocalRp.new(parent_instance: self, create_children: @create_children) end class ExternalRp < XML::ConfigClass def has_multiple_values? true end def _section :'external-rp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GroupAddresses < XML::ConfigClass def has_multiple_values? true end def _section :'group-addresses' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "multicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupAddresses def group_addresses if @create_children @subclasses['group-addresses'] ||= GroupAddresses.new(parent_instance: self, create_children: @create_children) else GroupAddresses.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"RP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "override"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Override learned RP for the same group"}} # RP address def name prop_get('@name') end # Override learned RP for the same group def override prop_get('override') end # Override learned RP for the same group def override=(val) prop_set('override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExternalRp def external_rp if @create_children @subclasses['external-rp'] ||= ExternalRp.new(parent_instance: self, create_children: @create_children) else ExternalRp.new(parent_instance: self) end end @props={} end # class Rp def rp @subclasses['rp'] ||= Rp.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable multicast protocol"}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "disabled"=>"yes", "default"=>"PIM-SM", "enum"=> [{"value"=>"PIM-SM", "help-string"=>"PIM Sparse Mode"}, {"value"=>"IGMP-Proxy", "help-string"=>"IGMP Proxy"}]}, "route-ageout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"210", "min"=>"210", "max"=>"7200", "help-string"=> "time to wait before aging out a multicast route after data stops, in seconds"}} # enable multicast protocol def enable prop_get('enable') end # enable multicast protocol def enable=(val) prop_set('enable', val) end def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end # time to wait before aging out a multicast route after data stops, in seconds def route_ageout_time prop_get('route-ageout-time') end # time to wait before aging out a multicast route after data stops, in seconds def route_ageout_time=(val) prop_set('route-ageout-time', val) end end # class Multicast def multicast @subclasses['multicast'] ||= Multicast.new(parent_instance: self, create_children: @create_children) end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class RedistProfile < XML::ConfigClass def has_multiple_values? true end def _section :'redist-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Filter < ConfigClass def has_multiple_values? false end def _section :'filter' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"static"}, {"value"=>"connect"}, {"value"=>"rip"}, {"value"=>"ospf"}, {"value"=>"bgp"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class Ospf < ConfigClass def has_multiple_values? false end def _section :'ospf' end class PathType < XML::ConfigClass def has_multiple_values? true end def _section :'path-type' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"intra-area"}, {"value"=>"inter-area"}, {"value"=>"ext-1"}, {"value"=>"ext-2"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PathType def path_type if @create_children @subclasses['path-type'] ||= PathType.new(parent_instance: self, create_children: @create_children) else PathType.new(parent_instance: self) end end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={} end # class Ospf def ospf @subclasses['ospf'] ||= Ospf.new(parent_instance: self, create_children: @create_children) end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class Community < XML::ConfigClass def has_multiple_values? true end def _section :'community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"10", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=>"^[0][xX][0-9A-Fa-f]{8}$|^[1-9][0-9]{0,4}:[1-9][0-9]{0,4}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Community def community if @create_children @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) else Community.new(parent_instance: self) end end class ExtendedCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'extended-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][[:xdigit:]]{16,16})|(([[:digit:]]+|target|origin):[[:digit:].]+:[[:digit:].]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExtendedCommunity def extended_community if @create_children @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) else ExtendedCommunity.new(parent_instance: self) end end @props={} end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Filter def filter @subclasses['filter'] ||= Filter.new(parent_instance: self, create_children: @create_children) end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class NoRedist < ConfigClass def has_multiple_values? false end def _section :'no-redist' end @props={} end # class NoRedist def no_redist @subclasses['no-redist'] ||= NoRedist.new(parent_instance: self, create_children: @create_children) end class Redist < ConfigClass def has_multiple_values? false end def _section :'redist' end @props={} end # class Redist def redist @subclasses['redist'] ||= Redist.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"16", "help-string"=>"profile name"}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"priority"}} # profile name def name prop_get('@name') end # priority def priority prop_get('priority') end # priority def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistProfile def redist_profile if @create_children @subclasses['redist-profile'] ||= RedistProfile.new(parent_instance: self, create_children: @create_children) else RedistProfile.new(parent_instance: self) end end class RedistProfileIpv6 < XML::ConfigClass def has_multiple_values? true end def _section :'redist-profile-ipv6' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Filter < ConfigClass def has_multiple_values? false end def _section :'filter' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"enum"=> [{"value"=>"static"}, {"value"=>"connect"}, {"value"=>"ospfv3"}, {"value"=>"bgp"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class Ospfv3 < ConfigClass def has_multiple_values? false end def _section :'ospfv3' end class PathType < XML::ConfigClass def has_multiple_values? true end def _section :'path-type' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"intra-area"}, {"value"=>"inter-area"}, {"value"=>"ext-1"}, {"value"=>"ext-2"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PathType def path_type if @create_children @subclasses['path-type'] ||= PathType.new(parent_instance: self, create_children: @create_children) else PathType.new(parent_instance: self) end end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={} end # class Ospfv3 def ospfv3 @subclasses['ospfv3'] ||= Ospfv3.new(parent_instance: self, create_children: @create_children) end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class Community < XML::ConfigClass def has_multiple_values? true end def _section :'community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"10", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=>"^[0][xX][0-9A-Fa-f]{8}$|^[1-9][0-9]{0,4}:[1-9][0-9]{0,4}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Community def community if @create_children @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) else Community.new(parent_instance: self) end end class ExtendedCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'extended-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][[:xdigit:]]{16,16})|(([[:digit:]]+|target|origin):[[:digit:].]+:[[:digit:].]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExtendedCommunity def extended_community if @create_children @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) else ExtendedCommunity.new(parent_instance: self) end end @props={} end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Filter def filter @subclasses['filter'] ||= Filter.new(parent_instance: self, create_children: @create_children) end class Action < XML::ConfigClass def has_multiple_values? true end def _section :'action' end class NoRedist < ConfigClass def has_multiple_values? false end def _section :'no-redist' end @props={} end # class NoRedist def no_redist @subclasses['no-redist'] ||= NoRedist.new(parent_instance: self, create_children: @create_children) end class Redist < ConfigClass def has_multiple_values? false end def _section :'redist' end @props={} end # class Redist def redist @subclasses['redist'] ||= Redist.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action if @create_children @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) else Action.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"46", "help-string"=>"profile name"}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"priority"}} # profile name def name prop_get('@name') end # priority def priority prop_get('priority') end # priority def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistProfileIpv6 def redist_profile_ipv6 if @create_children @subclasses['redist-profile-ipv6'] ||= RedistProfileIpv6.new(parent_instance: self, create_children: @create_children) else RedistProfileIpv6.new(parent_instance: self) end end class Rip < ConfigClass def has_multiple_values? false end def _section :'rip' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end @props={"interval-seconds"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=>"timer interval value in seconds"}, "update-intervals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"30", "help-string"=> "number of intervals take between route advertisement (RIP response packet)"}, "expire-intervals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"180", "help-string"=> "number of intervals take between route last updated to its expiration"}, "delete-intervals"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"120", "help-string"=> "number of intervals take between route expiration to its deletion"}} # timer interval value in seconds def interval_seconds prop_get('interval-seconds') end # timer interval value in seconds def interval_seconds=(val) prop_set('interval-seconds', val) end # number of intervals take between route advertisement (RIP response packet) def update_intervals prop_get('update-intervals') end # number of intervals take between route advertisement (RIP response packet) def update_intervals=(val) prop_set('update-intervals', val) end # number of intervals take between route last updated to its expiration def expire_intervals prop_get('expire-intervals') end # number of intervals take between route last updated to its expiration def expire_intervals=(val) prop_set('expire-intervals', val) end # number of intervals take between route expiration to its deletion def delete_intervals prop_get('delete-intervals') end # number of intervals take between route expiration to its deletion def delete_intervals=(val) prop_set('delete-intervals', val) end end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Md5 < XML::ConfigClass def has_multiple_values? true end def _section :'md5' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Key-ID"}, "key"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "maxlen"=>"16", "help-string"=>"key for the authentication"}, "preferred"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"prefer to use this key when sending packet"}} # Key-ID def name prop_get('@name') end # key for the authentication def key prop_get('key') end # key for the authentication def key=(val) prop_set('key', val) end # prefer to use this key when sending packet def preferred prop_get('preferred') end # prefer to use this key when sending packet def preferred=(val) prop_set('preferred', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Md5 def md5 if @create_children @subclasses['md5'] ||= Md5.new(parent_instance: self, create_children: @create_children) else Md5.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "type"=>"string", "maxlen"=>"16", "skip-commit-validation"=>"yes", "help-string"=>"Simple password authentication"}} def name prop_get('@name') end # Simple password authentication def password prop_get('password') end # Simple password authentication def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"15", "default"=>"10", "help-string"=>"metric to be used when advertise default route via RIP"}} # metric to be used when advertise default route via RIP def metric prop_get('metric') end # metric to be used when advertise default route via RIP def metric=(val) prop_set('metric', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#rip/auth-profile/entry/@name"]}, "mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"normal", "enum"=> [{"value"=>"normal", "help-string"=>"send and receive"}, {"value"=>"passive", "help-string"=>"receive only"}, {"value"=>"send-only", "help-string"=>"send only, do not receive RIP updates"}]}} # interface name def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class ExportRules < XML::ConfigClass def has_multiple_values? true end def _section :'export-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"16", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#protocol/redist-profile/entry/@name"]}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"16", "help-string"=>"metric value"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExportRules def export_rules if @create_children @subclasses['export-rules'] ||= ExportRules.new(parent_instance: self, create_children: @create_children) else ExportRules.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from RIP", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to RIP", "type"=>"bool", "default"=>"no"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # do not learn default route from RIP def reject_default_route prop_get('reject-default-route') end # do not learn default route from RIP def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to RIP def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to RIP def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end end # class Rip def rip @subclasses['rip'] ||= Rip.new(parent_instance: self, create_children: @create_children) end class Ospf < ConfigClass def has_multiple_values? false end def _section :'ospf' end class FloodPrevention < ConfigClass def has_multiple_values? false end def _section :'flood-prevention' end class Hello < ConfigClass def has_multiple_values? false end def _section :'hello' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-packet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "default"=>"8", "help-string"=>"Maximum of outstanding Hello packets"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum of outstanding Hello packets def max_packet prop_get('max-packet') end # Maximum of outstanding Hello packets def max_packet=(val) prop_set('max-packet', val) end end # class Hello def hello @subclasses['hello'] ||= Hello.new(parent_instance: self, create_children: @create_children) end class Lsa < ConfigClass def has_multiple_values? false end def _section :'lsa' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "max-packet"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"64", "default"=>"8", "help-string"=>"Maximum of outstanding LSAs"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Maximum of outstanding LSAs def max_packet prop_get('max-packet') end # Maximum of outstanding LSAs def max_packet=(val) prop_set('max-packet', val) end end # class Lsa def lsa @subclasses['lsa'] ||= Lsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class FloodPrevention def flood_prevention @subclasses['flood-prevention'] ||= FloodPrevention.new(parent_instance: self, create_children: @create_children) end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end @props={"spf-calculation-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0.05", "max"=>"10", "default"=>"5", "help-string"=>"Delay in seconds before running the SPF algorithm"}, "lsa-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"1", "max"=>"10", "default"=>"5", "help-string"=> "The minimum time in seconds between distinct originations of any particular LSA"}} # Delay in seconds before running the SPF algorithm def spf_calculation_delay prop_get('spf-calculation-delay') end # Delay in seconds before running the SPF algorithm def spf_calculation_delay=(val) prop_set('spf-calculation-delay', val) end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval prop_get('lsa-interval') end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval=(val) prop_set('lsa-interval', val) end end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Md5 < XML::ConfigClass def has_multiple_values? true end def _section :'md5' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"rangedint", "min"=>"0", "max"=>"255", "help-string"=>"Key-ID"}, "key"=> {"node-type"=>"element", "encrypt"=>"yes", "type"=>"string", "skip-commit-validation"=>"yes", "maxlen"=>"16", "help-string"=>"key for the authentication"}, "preferred"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"use this key when sending packet"}} # Key-ID def name prop_get('@name') end # key for the authentication def key prop_get('key') end # key for the authentication def key=(val) prop_set('key', val) end # use this key when sending packet def preferred prop_get('preferred') end # use this key when sending packet def preferred=(val) prop_set('preferred', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Md5 def md5 if @create_children @subclasses['md5'] ||= Md5.new(parent_instance: self, create_children: @create_children) else Md5.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "type"=>"string", "maxlen"=>"8", "help-string"=>"Simple password authentication"}} def name prop_get('@name') end # Simple password authentication def password prop_get('password') end # Simple password authentication def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Normal < ConfigClass def has_multiple_values? false end def _section :'normal' end @props={} end # class Normal def normal @subclasses['normal'] ||= Normal.new(parent_instance: self, create_children: @create_children) end class Stub < ConfigClass def has_multiple_values? false end def _section :'stub' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def accept_summary prop_get('accept-summary') end def accept_summary=(val) prop_set('accept-summary', val) end end # class Stub def stub @subclasses['stub'] ||= Stub.new(parent_instance: self, create_children: @create_children) end class Nssa < ConfigClass def has_multiple_values? false end def _section :'nssa' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}, "type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"metric type to be used when advertise default route", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end # metric type to be used when advertise default route def type prop_get('type') end # metric type to be used when advertise default route def type=(val) prop_set('type', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end class NssaExtRange < XML::ConfigClass def has_multiple_values? true end def _section :'nssa-ext-range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "help-string"=>"network/prefix"}} # network/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NssaExtRange def nssa_ext_range if @create_children @subclasses['nssa-ext-range'] ||= NssaExtRange.new(parent_instance: self, create_children: @create_children) else NssaExtRange.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def accept_summary prop_get('accept-summary') end def accept_summary=(val) prop_set('accept-summary', val) end end # class Nssa def nssa @subclasses['nssa'] ||= Nssa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Range < XML::ConfigClass def has_multiple_values? true end def _section :'range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"network/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # network/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Range def range if @create_children @subclasses['range'] ||= Range.new(parent_instance: self, create_children: @create_children) else Range.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LinkType < XML::ConfigClass def has_multiple_values? true end def _section :'link-type' end class Broadcast < ConfigClass def has_multiple_values? false end def _section :'broadcast' end @props={} end # class Broadcast def broadcast @subclasses['broadcast'] ||= Broadcast.new(parent_instance: self, create_children: @create_children) end class P2p < ConfigClass def has_multiple_values? false end def _section :'p2p' end @props={} end # class P2p def p2p @subclasses['p2p'] ||= P2p.new(parent_instance: self, create_children: @create_children) end class P2mp < ConfigClass def has_multiple_values? false end def _section :'p2mp' end @props={} end # class P2mp def p2mp @subclasses['p2mp'] ||= P2mp.new(parent_instance: self, create_children: @create_children) end @props={} end # class LinkType def link_type if @create_children @subclasses['link-type'] ||= LinkType.new(parent_instance: self, create_children: @create_children) else LinkType.new(parent_instance: self) end end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes"}, "metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Cost of neighbor", "disabled"=>"yes"}} def name prop_get('@name') end # Cost of neighbor def metric prop_get('metric') end # Cost of neighbor def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../../interface/member"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable OSPF in this interface"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Suppress the sending of hello packets in this interface"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Cost of OSPF interface"}, "priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"1", "help-string"=>"Priority for OSPF designated router selection"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospf/auth-profile/entry/@name"]}, "gr-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"10", "help-string"=> "Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts"}} # interface name def name prop_get('@name') end # Enable OSPF in this interface def enable prop_get('enable') end # Enable OSPF in this interface def enable=(val) prop_set('enable', val) end # Suppress the sending of hello packets in this interface def passive prop_get('passive') end # Suppress the sending of hello packets in this interface def passive=(val) prop_set('passive', val) end # Cost of OSPF interface def metric prop_get('metric') end # Cost of OSPF interface def metric=(val) prop_set('metric', val) end # Priority for OSPF designated router selection def priority prop_get('priority') end # Priority for OSPF designated router selection def priority=(val) prop_set('priority', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay prop_get('gr-delay') end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay=(val) prop_set('gr-delay', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class VirtualLink < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"virtual-link name"}, "neighbor-id"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"neighbor router id for virtual link", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "transit-area-id"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"id of transit area, cannot be backbone, stub or NSSA", "autocomplete"=>"yes", "memberof"=> ["#ospf/area/entry[(@name != '0.0.0.0') and (type/normal)]/@name"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable this virtual link"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "disabled"=>"yes", "help-string"=> "Suppress the sending of hello packets in this virtual link"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospf/auth-profile/entry/@name"]}} # virtual-link name def name prop_get('@name') end # neighbor router id for virtual link def neighbor_id prop_get('neighbor-id') end # neighbor router id for virtual link def neighbor_id=(val) prop_set('neighbor-id', val) end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id prop_get('transit-area-id') end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id=(val) prop_set('transit-area-id', val) end # Enable this virtual link def enable prop_get('enable') end # Enable this virtual link def enable=(val) prop_set('enable', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Suppress the sending of hello packets in this virtual link def passive prop_get('passive') end # Suppress the sending of hello packets in this virtual link def passive=(val) prop_set('passive', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualLink def virtual_link if @create_children @subclasses['virtual-link'] ||= VirtualLink.new(parent_instance: self, create_children: @create_children) else VirtualLink.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"Area ID", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Area ID def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class ExportRules < XML::ConfigClass def has_multiple_values? true end def _section :'export-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#protocol/redist-profile/entry/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"help-string"=>"redistribute routes using redist-profile"}, "ipspec"=> {"subnet-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"generate subnet for redistribution"}}}, "new-path-type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"path type to be used for imported external routes", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}, "new-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"new tag value", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"metric value"}} def name prop_get('@name') end # path type to be used for imported external routes def new_path_type prop_get('new-path-type') end # path type to be used for imported external routes def new_path_type=(val) prop_set('new-path-type', val) end # new tag value def new_tag prop_get('new-tag') end # new tag value def new_tag=(val) prop_set('new-tag', val) end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExportRules def export_rules if @create_children @subclasses['export-rules'] ||= ExportRules.new(parent_instance: self, create_children: @create_children) else ExportRules.new(parent_instance: self) end end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"120", "help-string"=>"maximum local restarting time (in seconds)"}, "helper-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable helping neighboring routers to graceful restart"}, "strict-LSA-checking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable strict LSA checking. Abort GR if lsa change is detected"}, "max-neighbor-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"maximum of neighbor restart time accepted (in seconds)", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"140"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # maximum local restarting time (in seconds) def grace_period prop_get('grace-period') end # maximum local restarting time (in seconds) def grace_period=(val) prop_set('grace-period', val) end # enable/disable helping neighboring routers to graceful restart def helper_enable prop_get('helper-enable') end # enable/disable helping neighboring routers to graceful restart def helper_enable=(val) prop_set('helper-enable', val) end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking prop_get('strict-LSA-checking') end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking=(val) prop_set('strict-LSA-checking', val) end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time prop_get('max-neighbor-restart-time') end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time=(val) prop_set('max-neighbor-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end @props={"router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this OSPF instance", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from OSPF", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to OSPF", "type"=>"bool", "default"=>"no"}, "rfc1583"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"rfc-1583 compatibility"}} # router id of this OSPF instance def router_id prop_get('router-id') end # router id of this OSPF instance def router_id=(val) prop_set('router-id', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # do not learn default route from OSPF def reject_default_route prop_get('reject-default-route') end # do not learn default route from OSPF def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to OSPF def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to OSPF def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end # rfc-1583 compatibility def rfc1583 prop_get('rfc1583') end # rfc-1583 compatibility def rfc1583=(val) prop_set('rfc1583', val) end end # class Ospf def ospf @subclasses['ospf'] ||= Ospf.new(parent_instance: self, create_children: @create_children) end class Ospfv3 < ConfigClass def has_multiple_values? false end def _section :'ospfv3' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end @props={"spf-calculation-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0.05", "max"=>"10", "default"=>"5", "help-string"=>"Delay in seconds before running the SPF algorithm"}, "lsa-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"1", "max"=>"10", "default"=>"5", "help-string"=> "The minimum time in seconds between distinct originations of any particular LSA"}} # Delay in seconds before running the SPF algorithm def spf_calculation_delay prop_get('spf-calculation-delay') end # Delay in seconds before running the SPF algorithm def spf_calculation_delay=(val) prop_set('spf-calculation-delay', val) end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval prop_get('lsa-interval') end # The minimum time in seconds between distinct originations of any particular LSA def lsa_interval=(val) prop_set('lsa-interval', val) end end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Authentication < ConfigClass def has_multiple_values? false end def _section :'authentication' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end class None__6 < ConfigClass def has_multiple_values? false end def _section :'none__6' end @props={} end # class None__6 def none__6 @subclasses['none__6'] ||= None__6.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"algorithm"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"3des", "prune-on"=>"cc-only-mode", "help-string"=>"key is 192 bit"}, {"value"=>"aes-128-cbc", "help-string"=>"key is 128 bit"}, {"value"=>"aes-192-cbc", "help-string"=>"key is 192 bit"}, {"value"=>"aes-256-cbc", "help-string"=>"key is 256 bit"}, {"value"=>"null", "prune-on"=>"fips-mode"}]}, "key"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=> "hex format xxxxxxxx[-xxxxxxxx]... total number of sections: 3des: 6, aes128: 4, aes192: 6, aes256: 8"}} def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: 3des: 6, aes128: 4, aes192: 6, aes256: 8 def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total number of sections: 3des: 6, aes128: 4, aes192: 6, aes256: 8 def key=(val) prop_set('key', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 4 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 4 sections def key=(val) prop_set('key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 5 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 5 sections def key=(val) prop_set('key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end class Sha256 < ConfigClass def has_multiple_values? false end def _section :'sha256' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 8 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 8 sections def key=(val) prop_set('key', val) end end # class Sha256 def sha256 @subclasses['sha256'] ||= Sha256.new(parent_instance: self, create_children: @create_children) end class Sha384 < ConfigClass def has_multiple_values? false end def _section :'sha384' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 12 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 12 sections def key=(val) prop_set('key', val) end end # class Sha384 def sha384 @subclasses['sha384'] ||= Sha384.new(parent_instance: self, create_children: @create_children) end class Sha512 < ConfigClass def has_multiple_values? false end def _section :'sha512' end @props={"key"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "show-help-tip"=>"yes", "help-string"=>"hex format xxxxxxxx[-xxxxxxxx]... total 16 sections"}} # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key prop_get('key') end # hex format xxxxxxxx[-xxxxxxxx]... total 16 sections def key=(val) prop_set('key', val) end end # class Sha512 def sha512 @subclasses['sha512'] ||= Sha512.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "spi"=> {"node-type"=>"element", "help-string"=>"SPI for both inbound and outbound SA, hex format xxxxxxxx.", "type"=>"string", "regex"=>"^([0-9a-fA-F]{8})$"}} def name prop_get('@name') end # SPI for both inbound and outbound SA, hex format xxxxxxxx. def spi prop_get('spi') end # SPI for both inbound and outbound SA, hex format xxxxxxxx. def spi=(val) prop_set('spi', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class Area < XML::ConfigClass def has_multiple_values? true end def _section :'area' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Normal < ConfigClass def has_multiple_values? false end def _section :'normal' end @props={} end # class Normal def normal @subclasses['normal'] ||= Normal.new(parent_instance: self, create_children: @create_children) end class Stub < ConfigClass def has_multiple_values? false end def _section :'stub' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"16777215", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable the origination and propagation of summary LSA to this area"}} # Enable the origination and propagation of summary LSA to this area def accept_summary prop_get('accept-summary') end # Enable the origination and propagation of summary LSA to this area def accept_summary=(val) prop_set('accept-summary', val) end end # class Stub def stub @subclasses['stub'] ||= Stub.new(parent_instance: self, create_children: @create_children) end class Nssa < ConfigClass def has_multiple_values? false end def _section :'nssa' end class DefaultRoute < XML::ConfigClass def has_multiple_values? true end def _section :'default-route' end class Disable < ConfigClass def has_multiple_values? false end def _section :'disable' end @props={} end # class Disable def disable @subclasses['disable'] ||= Disable.new(parent_instance: self, create_children: @create_children) end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={"metric"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"16777215", "default"=>"10", "help-string"=> "metric to be used when advertise default route within this stub area"}, "type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"metric type to be used when advertise default route", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}} # metric to be used when advertise default route within this stub area def metric prop_get('metric') end # metric to be used when advertise default route within this stub area def metric=(val) prop_set('metric', val) end # metric type to be used when advertise default route def type prop_get('type') end # metric type to be used when advertise default route def type=(val) prop_set('type', val) end end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end @props={} end # class DefaultRoute def default_route if @create_children @subclasses['default-route'] ||= DefaultRoute.new(parent_instance: self, create_children: @create_children) else DefaultRoute.new(parent_instance: self) end end class NssaExtRange < XML::ConfigClass def has_multiple_values? true end def _section :'nssa-ext-range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"network/prefix"}, "route-tag"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=>"route tag value"}} # network/prefix def name prop_get('@name') end # route tag value def route_tag prop_get('route-tag') end # route tag value def route_tag=(val) prop_set('route-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NssaExtRange def nssa_ext_range if @create_children @subclasses['nssa-ext-range'] ||= NssaExtRange.new(parent_instance: self, create_children: @create_children) else NssaExtRange.new(parent_instance: self) end end @props={"accept-summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable the origination and propagation of summary LSA to this area"}} # Enable the origination and propagation of summary LSA to this area def accept_summary prop_get('accept-summary') end # Enable the origination and propagation of summary LSA to this area def accept_summary=(val) prop_set('accept-summary', val) end end # class Nssa def nssa @subclasses['nssa'] ||= Nssa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Range < XML::ConfigClass def has_multiple_values? true end def _section :'range' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Advertise < ConfigClass def has_multiple_values? false end def _section :'advertise' end @props={} end # class Advertise def advertise @subclasses['advertise'] ||= Advertise.new(parent_instance: self, create_children: @create_children) end class Suppress < ConfigClass def has_multiple_values? false end def _section :'suppress' end @props={} end # class Suppress def suppress @subclasses['suppress'] ||= Suppress.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"network/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=>{"ipspec"=>{}, "string"=>{"maxlen"=>"63"}}}} # network/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Range def range if @create_children @subclasses['range'] ||= Range.new(parent_instance: self, create_children: @create_children) else Range.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class LinkType < XML::ConfigClass def has_multiple_values? true end def _section :'link-type' end class Broadcast < ConfigClass def has_multiple_values? false end def _section :'broadcast' end @props={} end # class Broadcast def broadcast @subclasses['broadcast'] ||= Broadcast.new(parent_instance: self, create_children: @create_children) end class P2p < ConfigClass def has_multiple_values? false end def _section :'p2p' end @props={} end # class P2p def p2p @subclasses['p2p'] ||= P2p.new(parent_instance: self, create_children: @create_children) end class P2mp < ConfigClass def has_multiple_values? false end def _section :'p2mp' end @props={} end # class P2mp def p2mp @subclasses['p2mp'] ||= P2mp.new(parent_instance: self, create_children: @create_children) end @props={} end # class LinkType def link_type if @create_children @subclasses['link-type'] ||= LinkType.new(parent_instance: self, create_children: @create_children) else LinkType.new(parent_instance: self) end end class Neighbor < XML::ConfigClass def has_multiple_values? true end def _section :'neighbor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "ipv6-only"=>"yes", "unicast-only"=>"yes"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Neighbor def neighbor if @create_children @subclasses['neighbor'] ||= Neighbor.new(parent_instance: self, create_children: @create_children) else Neighbor.new(parent_instance: self) end end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../../interface/member"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable OSPF in this interface"}, "instance-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=>"OSPFv3 instance ID"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Suppress the sending of hello packets in this interface"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Cost of OSPF interface"}, "priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"1", "help-string"=>"Priority for OSPF designated router selection"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospfv3/auth-profile/entry/@name"]}, "gr-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"10", "help-string"=> "Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts"}} # interface name def name prop_get('@name') end # Enable OSPF in this interface def enable prop_get('enable') end # Enable OSPF in this interface def enable=(val) prop_set('enable', val) end # OSPFv3 instance ID def instance_id prop_get('instance-id') end # OSPFv3 instance ID def instance_id=(val) prop_set('instance-id', val) end # Suppress the sending of hello packets in this interface def passive prop_get('passive') end # Suppress the sending of hello packets in this interface def passive=(val) prop_set('passive', val) end # Cost of OSPF interface def metric prop_get('metric') end # Cost of OSPF interface def metric=(val) prop_set('metric', val) end # Priority for OSPF designated router selection def priority prop_get('priority') end # Priority for OSPF designated router selection def priority=(val) prop_set('priority', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay prop_get('gr-delay') end # Period (in seconds) used to send grace LSAs before first hello is sent when graceful restart starts def gr_delay=(val) prop_set('gr-delay', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class VirtualLink < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-link' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"virtual-link name"}, "neighbor-id"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"neighbor router id for virtual link", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "transit-area-id"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"id of transit area, cannot be backbone, stub or NSSA", "autocomplete"=>"yes", "memberof"=> ["#ospfv3/area/entry[(@name != '0.0.0.0') and (type/normal)]/@name"]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable this virtual link"}, "interface-id"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2147483647", "help-string"=> "The interface ID assigned to the OSPFv3 virtual interface."}, "instance-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=>"OSPFv3 instance ID"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"10", "help-string"=>"Interval (in seconds) to send Hello packets"}, "dead-counts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"20", "default"=>"4", "help-string"=>"number of lost hello packets to declare router down"}, "retransmit-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"5", "help-string"=>"Interval (in seconds) to retransmit LSAs"}, "transit-delay"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1800", "default"=>"1", "help-string"=>"Estimated delay (in seconds) to transmit LSAs"}, "passive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "disabled"=>"yes", "help-string"=> "Suppress the sending of hello packets in this virtual link"}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospfv3/auth-profile/entry/@name"]}} # virtual-link name def name prop_get('@name') end # neighbor router id for virtual link def neighbor_id prop_get('neighbor-id') end # neighbor router id for virtual link def neighbor_id=(val) prop_set('neighbor-id', val) end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id prop_get('transit-area-id') end # id of transit area, cannot be backbone, stub or NSSA def transit_area_id=(val) prop_set('transit-area-id', val) end # Enable this virtual link def enable prop_get('enable') end # Enable this virtual link def enable=(val) prop_set('enable', val) end # The interface ID assigned to the OSPFv3 virtual interface. def interface_id prop_get('interface-id') end # The interface ID assigned to the OSPFv3 virtual interface. def interface_id=(val) prop_set('interface-id', val) end # OSPFv3 instance ID def instance_id prop_get('instance-id') end # OSPFv3 instance ID def instance_id=(val) prop_set('instance-id', val) end # Interval (in seconds) to send Hello packets def hello_interval prop_get('hello-interval') end # Interval (in seconds) to send Hello packets def hello_interval=(val) prop_set('hello-interval', val) end # number of lost hello packets to declare router down def dead_counts prop_get('dead-counts') end # number of lost hello packets to declare router down def dead_counts=(val) prop_set('dead-counts', val) end # Interval (in seconds) to retransmit LSAs def retransmit_interval prop_get('retransmit-interval') end # Interval (in seconds) to retransmit LSAs def retransmit_interval=(val) prop_set('retransmit-interval', val) end # Estimated delay (in seconds) to transmit LSAs def transit_delay prop_get('transit-delay') end # Estimated delay (in seconds) to transmit LSAs def transit_delay=(val) prop_set('transit-delay', val) end # Suppress the sending of hello packets in this virtual link def passive prop_get('passive') end # Suppress the sending of hello packets in this virtual link def passive=(val) prop_set('passive', val) end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualLink def virtual_link if @create_children @subclasses['virtual-link'] ||= VirtualLink.new(parent_instance: self, create_children: @create_children) else VirtualLink.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "help-string"=>"Area ID", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#ospfv3/auth-profile/entry/@name"]}} # Area ID def name prop_get('@name') end # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Area def area if @create_children @subclasses['area'] ||= Area.new(parent_instance: self, create_children: @create_children) else Area.new(parent_instance: self) end end class ExportRules < XML::ConfigClass def has_multiple_values? true end def _section :'export-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#protocol/redist-profile-ipv6/entry/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"string"=>{"help-string"=>"redistribute routes using redist-profile"}, "ipspec"=> {"ipv6-only"=>"yes", "subnet-only"=>"yes", "help-string"=>"generate subnet for redistribution"}}}, "new-path-type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"ext-2", "help-string"=>"path type to be used for imported external routes", "enum"=> [{"value"=>"ext-1", "help-string"=>"metric comparable with OSPF metric"}, {"value"=>"ext-2", "help-string"=> "external route is always less preferred than OSPF routes"}]}, "new-tag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"new tag value", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"4294967295"}, "ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}}}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"16777215", "help-string"=>"metric value"}} def name prop_get('@name') end # path type to be used for imported external routes def new_path_type prop_get('new-path-type') end # path type to be used for imported external routes def new_path_type=(val) prop_set('new-path-type', val) end # new tag value def new_tag prop_get('new-tag') end # new tag value def new_tag=(val) prop_set('new-tag', val) end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ExportRules def export_rules if @create_children @subclasses['export-rules'] ||= ExportRules.new(parent_instance: self, create_children: @create_children) else ExportRules.new(parent_instance: self) end end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "grace-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"120", "help-string"=>"maximum local restarting time (in seconds)"}, "helper-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable helping neighboring routers to graceful restart"}, "strict-LSA-checking"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "enable/disable strict LSA checking. Abort GR if lsa change is detected"}, "max-neighbor-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"maximum of neighbor restart time accepted (in seconds)", "type"=>"rangedint", "min"=>"5", "max"=>"1800", "default"=>"140"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # maximum local restarting time (in seconds) def grace_period prop_get('grace-period') end # maximum local restarting time (in seconds) def grace_period=(val) prop_set('grace-period', val) end # enable/disable helping neighboring routers to graceful restart def helper_enable prop_get('helper-enable') end # enable/disable helping neighboring routers to graceful restart def helper_enable=(val) prop_set('helper-enable', val) end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking prop_get('strict-LSA-checking') end # enable/disable strict LSA checking. Abort GR if lsa change is detected def strict_LSA_checking=(val) prop_set('strict-LSA-checking', val) end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time prop_get('max-neighbor-restart-time') end # maximum of neighbor restart time accepted (in seconds) def max_neighbor_restart_time=(val) prop_set('max-neighbor-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end @props={"router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this OSPFv3 instance", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from OSPF", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to OSPF", "type"=>"bool", "default"=>"no"}, "disable-transit-traffic"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=> "whether OSPFv3 should set the R- and V6-bits in its Router-LSAs", "type"=>"bool", "default"=>"no"}} # router id of this OSPFv3 instance def router_id prop_get('router-id') end # router id of this OSPFv3 instance def router_id=(val) prop_set('router-id', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # do not learn default route from OSPF def reject_default_route prop_get('reject-default-route') end # do not learn default route from OSPF def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to OSPF def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to OSPF def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end # whether OSPFv3 should set the R- and V6-bits in its Router-LSAs def disable_transit_traffic prop_get('disable-transit-traffic') end # whether OSPFv3 should set the R- and V6-bits in its Router-LSAs def disable_transit_traffic=(val) prop_set('disable-transit-traffic', val) end end # class Ospfv3 def ospfv3 @subclasses['ospfv3'] ||= Ospfv3.new(parent_instance: self, create_children: @create_children) end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class RoutingOptions < ConfigClass def has_multiple_values? false end def _section :'routing-options' end class Med < ConfigClass def has_multiple_values? false end def _section :'med' end @props={"always-compare-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"always compare MEDs"}, "deterministic-med-comparison"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"deterministic MEDs comparison"}} # always compare MEDs def always_compare_med prop_get('always-compare-med') end # always compare MEDs def always_compare_med=(val) prop_set('always-compare-med', val) end # deterministic MEDs comparison def deterministic_med_comparison prop_get('deterministic-med-comparison') end # deterministic MEDs comparison def deterministic_med_comparison=(val) prop_set('deterministic-med-comparison', val) end end # class Med def med @subclasses['med'] ||= Med.new(parent_instance: self, create_children: @create_children) end class OutboundRouteFilter < ConfigClass def has_multiple_values? false end def _section :'outbound-route-filter' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable ORF"}, "max-received-entries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "help-string"=>"maximum of prefixes to receive"}, "cisco-prefix-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"vendor-compatible mode"}} # enable ORF def enable prop_get('enable') end # enable ORF def enable=(val) prop_set('enable', val) end # maximum of prefixes to receive def max_received_entries prop_get('max-received-entries') end # maximum of prefixes to receive def max_received_entries=(val) prop_set('max-received-entries', val) end # vendor-compatible mode def cisco_prefix_mode prop_get('cisco-prefix-mode') end # vendor-compatible mode def cisco_prefix_mode=(val) prop_set('cisco-prefix-mode', val) end end # class OutboundRouteFilter def outbound_route_filter @subclasses['outbound-route-filter'] ||= OutboundRouteFilter.new(parent_instance: self, create_children: @create_children) end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "stale-route-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=> "time to remove stale routes after peer restart (in seconds)"}, "local-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=>"local restart time to advertise to peer (in seconds)"}, "max-peer-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=>"maximum of peer restart time accepted (in seconds)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # time to remove stale routes after peer restart (in seconds) def stale_route_time prop_get('stale-route-time') end # time to remove stale routes after peer restart (in seconds) def stale_route_time=(val) prop_set('stale-route-time', val) end # local restart time to advertise to peer (in seconds) def local_restart_time prop_get('local-restart-time') end # local restart time to advertise to peer (in seconds) def local_restart_time=(val) prop_set('local-restart-time', val) end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time prop_get('max-peer-restart-time') end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time=(val) prop_set('max-peer-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end class Aggregate < ConfigClass def has_multiple_values? false end def _section :'aggregate' end @props={"aggregate-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"aggregate route only if they have same MED attributes"}} # aggregate route only if they have same MED attributes def aggregate_med prop_get('aggregate-med') end # aggregate route only if they have same MED attributes def aggregate_med=(val) prop_set('aggregate-med', val) end end # class Aggregate def aggregate @subclasses['aggregate'] ||= Aggregate.new(parent_instance: self, create_children: @create_children) end @props={"as-format"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"2-byte", "help-string"=>"AS format", "enum"=> [{"value"=>"2-byte", "help-string"=>"2-byte AS format"}, {"value"=>"4-byte", "help-string"=>"4-byte AS format specified in rfc-4893"}]}, "default-local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"100", "help-string"=>"default local preference"}, "reflector-cluster-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"route reflector cluster ID", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "confederation-member-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"confederation requires member-AS number", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/as-number]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "rangedint"=>{"min"=>"1", "max"=>"4294967295"}}}} # AS format def as_format prop_get('as-format') end # AS format def as_format=(val) prop_set('as-format', val) end # default local preference def default_local_preference prop_get('default-local-preference') end # default local preference def default_local_preference=(val) prop_set('default-local-preference', val) end # route reflector cluster ID def reflector_cluster_id prop_get('reflector-cluster-id') end # route reflector cluster ID def reflector_cluster_id=(val) prop_set('reflector-cluster-id', val) end # confederation requires member-AS number def confederation_member_as prop_get('confederation-member-as') end # confederation requires member-AS number def confederation_member_as=(val) prop_set('confederation-member-as', val) end end # class RoutingOptions def routing_options @subclasses['routing-options'] ||= RoutingOptions.new(parent_instance: self, create_children: @create_children) end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "secret"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"shared secret for the TCP MD5 authentication"}} def name prop_get('@name') end # shared secret for the TCP MD5 authentication def secret prop_get('secret') end # shared secret for the TCP MD5 authentication def secret=(val) prop_set('secret', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class DampeningProfile < XML::ConfigClass def has_multiple_values? true end def _section :'dampening-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "cutoff"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"1000", "default"=>"1.25", "help-string"=>"cutoff threshold value"}, "reuse"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"1000", "default"=>"0.5", "help-string"=>"reuse threshold value"}, "max-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"900", "help-string"=>"maximum of hold-down time (in seconds)"}, "decay-half-life-reachable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"300", "help-string"=>"Decay half-life while reachable (in seconds)"}, "decay-half-life-unreachable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"900", "help-string"=>"Decay half-life while unreachable (in seconds)"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # cutoff threshold value def cutoff prop_get('cutoff') end # cutoff threshold value def cutoff=(val) prop_set('cutoff', val) end # reuse threshold value def reuse prop_get('reuse') end # reuse threshold value def reuse=(val) prop_set('reuse', val) end # maximum of hold-down time (in seconds) def max_hold_time prop_get('max-hold-time') end # maximum of hold-down time (in seconds) def max_hold_time=(val) prop_set('max-hold-time', val) end # Decay half-life while reachable (in seconds) def decay_half_life_reachable prop_get('decay-half-life-reachable') end # Decay half-life while reachable (in seconds) def decay_half_life_reachable=(val) prop_set('decay-half-life-reachable', val) end # Decay half-life while unreachable (in seconds) def decay_half_life_unreachable prop_get('decay-half-life-unreachable') end # Decay half-life while unreachable (in seconds) def decay_half_life_unreachable=(val) prop_set('decay-half-life-unreachable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DampeningProfile def dampening_profile if @create_children @subclasses['dampening-profile'] ||= DampeningProfile.new(parent_instance: self, create_children: @create_children) else DampeningProfile.new(parent_instance: self) end end class GlobalBfd < ConfigClass def has_multiple_values? false end def _section :'global-bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"None", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"None", "help-string"=>"Disable BFD"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class GlobalBfd def global_bfd @subclasses['global-bfd'] ||= GlobalBfd.new(parent_instance: self, create_children: @create_children) end class PeerGroup < XML::ConfigClass def has_multiple_values? true end def _section :'peer-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Ibgp < ConfigClass def has_multiple_values? false end def _section :'ibgp' end @props={"export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-self", "help-string"=>"override nexthop with self address"}]}} def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end end # class Ibgp def ibgp @subclasses['ibgp'] ||= Ibgp.new(parent_instance: self, create_children: @create_children) end class EbgpConfed < ConfigClass def has_multiple_values? false end def _section :'ebgp-confed' end @props={"export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-self", "help-string"=>"override nexthop with self address"}]}} def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end end # class EbgpConfed def ebgp_confed @subclasses['ebgp-confed'] ||= EbgpConfed.new(parent_instance: self, create_children: @create_children) end class IbgpConfed < ConfigClass def has_multiple_values? false end def _section :'ibgp-confed' end @props={"export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-self", "help-string"=>"override nexthop with self address"}]}} def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end end # class IbgpConfed def ibgp_confed @subclasses['ibgp-confed'] ||= IbgpConfed.new(parent_instance: self, create_children: @create_children) end class Ebgp < ConfigClass def has_multiple_values? false end def _section :'ebgp' end @props={"import-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"original", "enum"=> [{"value"=>"original", "help-string"=>"keep original nexthop"}, {"value"=>"use-peer", "help-string"=>"override nexthop with peer address"}]}, "export-nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"resolve", "enum"=> [{"value"=>"resolve", "help-string"=>"export locally resolved nexthop"}, {"value"=>"use-self", "help-string"=>"export self address as nexthop"}]}, "remove-private-as"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"remove private AS when exporting route"}} def import_nexthop prop_get('import-nexthop') end def import_nexthop=(val) prop_set('import-nexthop', val) end def export_nexthop prop_get('export-nexthop') end def export_nexthop=(val) prop_set('export-nexthop', val) end # remove private AS when exporting route def remove_private_as prop_get('remove-private-as') end # remove private AS when exporting route def remove_private_as=(val) prop_set('remove-private-as', val) end end # class Ebgp def ebgp @subclasses['ebgp'] ||= Ebgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class Peer < XML::ConfigClass def has_multiple_values? true end def _section :'peer' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SubsequentAddressFamilyIdentifier < ConfigClass def has_multiple_values? false end def _section :'subsequent-address-family-identifier' end @props={"unicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "multicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def unicast prop_get('unicast') end def unicast=(val) prop_set('unicast', val) end def multicast prop_get('multicast') end def multicast=(val) prop_set('multicast', val) end end # class SubsequentAddressFamilyIdentifier def subsequent_address_family_identifier @subclasses['subsequent-address-family-identifier'] ||= SubsequentAddressFamilyIdentifier.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"interface to accept BGP session", "autocomplete"=>"yes", "memberof"=>["#myentry(virtual-router)/interface/member"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name"]}} # interface to accept BGP session def interface prop_get('interface') end # interface to accept BGP session def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"peer address configuration", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"bgp peer FQDN address object configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # peer address configuration def ip prop_get('ip') end # peer address configuration def ip=(val) prop_set('ip', val) end # bgp peer FQDN address object configuration def fqdn prop_get('fqdn') end # bgp peer FQDN address object configuration def fqdn=(val) prop_set('fqdn', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class ConnectionOptions < ConfigClass def has_multiple_values? false end def _section :'connection-options' end class IncomingBgpConnection < ConfigClass def has_multiple_values? false end def _section :'incoming-bgp-connection' end @props={"remote-port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"65535", "default"=>"0", "help-string"=>"restrict remote port for incoming BGP connections"}, "allow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # restrict remote port for incoming BGP connections def remote_port prop_get('remote-port') end # restrict remote port for incoming BGP connections def remote_port=(val) prop_set('remote-port', val) end def allow prop_get('allow') end def allow=(val) prop_set('allow', val) end end # class IncomingBgpConnection def incoming_bgp_connection @subclasses['incoming-bgp-connection'] ||= IncomingBgpConnection.new(parent_instance: self, create_children: @create_children) end class OutgoingBgpConnection < ConfigClass def has_multiple_values? false end def _section :'outgoing-bgp-connection' end @props={"local-port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"0", "max"=>"65535", "default"=>"0", "help-string"=>"use specific local port for outgoing BGP connections"}, "allow"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} # use specific local port for outgoing BGP connections def local_port prop_get('local-port') end # use specific local port for outgoing BGP connections def local_port=(val) prop_set('local-port', val) end def allow prop_get('allow') end def allow=(val) prop_set('allow', val) end end # class OutgoingBgpConnection def outgoing_bgp_connection @subclasses['outgoing-bgp-connection'] ||= OutgoingBgpConnection.new(parent_instance: self, create_children: @create_children) end @props={"authentication"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes", "help-string"=>"Authentication options", "autocomplete"=>"yes", "memberof"=>["#bgp/auth-profile/entry/@name"]}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"30", "help-string"=>"keep-alive interval (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"1", "max"=>"1200", "default"=>"30"}}}, "min-route-adv-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"30", "help-string"=>"Minimum Route Advertisement Interval (in seconds)"}, "multihop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=> "IP TTL value used for sending BGP packet. set to 0 means eBGP use 2, iBGP use 255"}, "open-delay-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"240", "default"=>"0", "help-string"=>"open delay time (in seconds)"}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"90", "help-string"=>"hold time (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"3", "max"=>"3600", "default"=>"90"}}}, "idle-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"15", "help-string"=>"idle hold time (in seconds)"}} # Authentication options def authentication prop_get('authentication') end # Authentication options def authentication=(val) prop_set('authentication', val) end # keep-alive interval (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # keep-alive interval (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval prop_get('min-route-adv-interval') end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval=(val) prop_set('min-route-adv-interval', val) end # IP TTL value used for sending BGP packet. set to 0 means eBGP use 2, iBGP use 255 def multihop prop_get('multihop') end # IP TTL value used for sending BGP packet. set to 0 means eBGP use 2, iBGP use 255 def multihop=(val) prop_set('multihop', val) end # open delay time (in seconds) def open_delay_time prop_get('open-delay-time') end # open delay time (in seconds) def open_delay_time=(val) prop_set('open-delay-time', val) end # hold time (in seconds) def hold_time prop_get('hold-time') end # hold time (in seconds) def hold_time=(val) prop_set('hold-time', val) end # idle hold time (in seconds) def idle_hold_time prop_get('idle-hold-time') end # idle hold time (in seconds) def idle_hold_time=(val) prop_set('idle-hold-time', val) end end # class ConnectionOptions def connection_options @subclasses['connection-options'] ||= ConnectionOptions.new(parent_instance: self, create_children: @create_children) end class Bfd < ConfigClass def has_multiple_values? false end def _section :'bfd' end @props={"profile"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Inherit-vr-global-setting", "help-string"=>"BFD profile", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#network/profiles/bfd-profile/entry/@name", "##/predefined/network-profile/bfd-profile/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"None", "help-string"=>"Disable BFD"}, {"value"=>"Inherit-vr-global-setting", "help-string"=>"Inherit Protocol's Global BFD Profile"}]}}} # BFD profile def profile prop_get('profile') end # BFD profile def profile=(val) prop_set('profile', val) end end # class Bfd def bfd @subclasses['bfd'] ||= Bfd.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "peer-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"peer AS number", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/as-number]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "rangedint"=>{"min"=>"1", "max"=>"4294967295"}}}, "enable-mp-bgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "address-family-identifier"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"select AFI for this peer", "enum"=> [{"value"=>"ipv4", "help-string"=>"enable IPv4 route exchange"}, {"value"=>"ipv6", "help-string"=>"enable IPv6 route exchange"}]}, "enable-sender-side-loop-detection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "reflector-client"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"non-client", "help-string"=>"this peer is reflector client", "enum"=> [{"value"=>"non-client", "help-string"=>"not a reflector client"}, {"value"=>"client", "help-string"=>"reflector client"}, {"value"=>"meshed-client", "help-string"=>"fully meshed reflector client"}]}, "peering-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unspecified", "help-string"=>"peering type that affects NOPEER community value handling", "enum"=> [{"value"=>"bilateral", "help-string"=> "block sending and receiving routes with NOPEER community value"}, {"value"=>"unspecified", "help-string"=>"disregard NOPEER community value with this peer"}]}, "aggregated-confed-as-path"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "default"=>"yes", "help-string"=>"this peer understands aggregated confederation AS path"}, "max-prefixes"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"5000", "help-string"=>"maximum of prefixes to receive from peer", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"100000", "default"=>"5000"}, "enum"=>[{"value"=>"unlimited"}]}}, "max-orf-entries"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"100000", "default"=>"5000", "help-string"=>"maximum of ORF entries accepted from peer"}, "soft-reset-with-stored-info"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "default"=>"no", "help-string"=>"soft reset with stored info"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # peer AS number def peer_as prop_get('peer-as') end # peer AS number def peer_as=(val) prop_set('peer-as', val) end def enable_mp_bgp prop_get('enable-mp-bgp') end def enable_mp_bgp=(val) prop_set('enable-mp-bgp', val) end # select AFI for this peer def address_family_identifier prop_get('address-family-identifier') end # select AFI for this peer def address_family_identifier=(val) prop_set('address-family-identifier', val) end def enable_sender_side_loop_detection prop_get('enable-sender-side-loop-detection') end def enable_sender_side_loop_detection=(val) prop_set('enable-sender-side-loop-detection', val) end # this peer is reflector client def reflector_client prop_get('reflector-client') end # this peer is reflector client def reflector_client=(val) prop_set('reflector-client', val) end # peering type that affects NOPEER community value handling def peering_type prop_get('peering-type') end # peering type that affects NOPEER community value handling def peering_type=(val) prop_set('peering-type', val) end # this peer understands aggregated confederation AS path def aggregated_confed_as_path prop_get('aggregated-confed-as-path') end # this peer understands aggregated confederation AS path def aggregated_confed_as_path=(val) prop_set('aggregated-confed-as-path', val) end # maximum of prefixes to receive from peer def max_prefixes prop_get('max-prefixes') end # maximum of prefixes to receive from peer def max_prefixes=(val) prop_set('max-prefixes', val) end # maximum of ORF entries accepted from peer def max_orf_entries prop_get('max-orf-entries') end # maximum of ORF entries accepted from peer def max_orf_entries=(val) prop_set('max-orf-entries', val) end # soft reset with stored info def soft_reset_with_stored_info prop_get('soft-reset-with-stored-info') end # soft reset with stored info def soft_reset_with_stored_info=(val) prop_set('soft-reset-with-stored-info', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Peer def peer if @create_children @subclasses['peer'] ||= Peer.new(parent_instance: self, create_children: @create_children) else Peer.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "aggregated-confed-as-path"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"the peers understand aggregated confederation AS path"}, "soft-reset-with-stored-info"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"soft reset with stored info"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # the peers understand aggregated confederation AS path def aggregated_confed_as_path prop_get('aggregated-confed-as-path') end # the peers understand aggregated confederation AS path def aggregated_confed_as_path=(val) prop_set('aggregated-confed-as-path', val) end # soft reset with stored info def soft_reset_with_stored_info prop_get('soft-reset-with-stored-info') end # soft reset with stored info def soft_reset_with_stored_info=(val) prop_set('soft-reset-with-stored-info', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PeerGroup def peer_group if @create_children @subclasses['peer-group'] ||= PeerGroup.new(parent_instance: self, create_children: @create_children) else PeerGroup.new(parent_instance: self) end end class Policy < ConfigClass def has_multiple_values? false end def _section :'policy' end class Import < ConfigClass def has_multiple_values? false end def _section :'import' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsedBy < XML::ConfigClass def has_multiple_values? true end def _section :'used-by' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UsedBy def used_by if @create_children @subclasses['used-by'] ||= UsedBy.new(parent_instance: self, create_children: @create_children) else UsedBy.new(parent_instance: self) end end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end class Update < ConfigClass def has_multiple_values? false end def _section :'update' end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Remove < ConfigClass def has_multiple_values? false end def _section :'remove' end @props={} end # class Remove def remove @subclasses['remove'] ||= Remove.new(parent_instance: self, create_children: @create_children) end @props={"prepend"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=>"prepend local AS for specified number of times"}, "remove-and-prepend"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=> "remove matched AS path(s), and prepend local AS for specified number of times"}} # prepend local AS for specified number of times def prepend prop_get('prepend') end # prepend local AS for specified number of times def prepend=(val) prop_set('prepend', val) end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend prop_get('remove-and-prepend') end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend=(val) prop_set('remove-and-prepend', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new local preference value"}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new MED value"}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "help-string"=>"new weight value"}, "nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"nexthop address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"new route origin", "enum"=> [{"value"=>"igp", "help-string"=>"route originated from IGP"}, {"value"=>"egp", "help-string"=>"route originated from EGP"}, {"value"=>"incomplete"}]}, "as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add AS path limit attribute if it does not exist "}} # new local preference value def local_preference prop_get('local-preference') end # new local preference value def local_preference=(val) prop_set('local-preference', val) end # new MED value def med prop_get('med') end # new MED value def med=(val) prop_set('med', val) end # new weight value def weight prop_get('weight') end # new weight value def weight=(val) prop_set('weight', val) end # nexthop address def nexthop prop_get('nexthop') end # nexthop address def nexthop=(val) prop_set('nexthop', val) end # new route origin def origin prop_get('origin') end # new route origin def origin=(val) prop_set('origin', val) end # add AS path limit attribute if it does not exist def as_path_limit prop_get('as-path-limit') end # add AS path limit attribute if it does not exist def as_path_limit=(val) prop_set('as-path-limit', val) end end # class Update def update @subclasses['update'] ||= Update.new(parent_instance: self, create_children: @create_children) end @props={"dampening"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"route flap dampening profile", "autocomplete"=>"yes", "memberof"=>["#bgp/dampening-profile/entry/@name"]}} # route flap dampening profile def dampening prop_get('dampening') end # route flap dampening profile def dampening=(val) prop_set('dampening', val) end end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable"}} def name prop_get('@name') end # Enable def enable prop_get('enable') end # Enable def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Import def import @subclasses['import'] ||= Import.new(parent_instance: self, create_children: @create_children) end class Export < ConfigClass def has_multiple_values? false end def _section :'export' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsedBy < XML::ConfigClass def has_multiple_values? true end def _section :'used-by' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UsedBy def used_by if @create_children @subclasses['used-by'] ||= UsedBy.new(parent_instance: self, create_children: @create_children) else UsedBy.new(parent_instance: self) end end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Deny < ConfigClass def has_multiple_values? false end def _section :'deny' end @props={} end # class Deny def deny @subclasses['deny'] ||= Deny.new(parent_instance: self, create_children: @create_children) end class Allow < ConfigClass def has_multiple_values? false end def _section :'allow' end class Update < ConfigClass def has_multiple_values? false end def _section :'update' end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Remove < ConfigClass def has_multiple_values? false end def _section :'remove' end @props={} end # class Remove def remove @subclasses['remove'] ||= Remove.new(parent_instance: self, create_children: @create_children) end @props={"prepend"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=>"prepend local AS for specified number of times"}, "remove-and-prepend"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=> "remove matched AS path(s), and prepend local AS for specified number of times"}} # prepend local AS for specified number of times def prepend prop_get('prepend') end # prepend local AS for specified number of times def prepend=(val) prop_set('prepend', val) end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend prop_get('remove-and-prepend') end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend=(val) prop_set('remove-and-prepend', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new local preference value"}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new MED value"}, "nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"nexthop address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"new route origin", "enum"=> [{"value"=>"igp", "help-string"=>"route originated from IGP"}, {"value"=>"egp", "help-string"=>"route originated from EGP"}, {"value"=>"incomplete"}]}, "as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add AS path limit attribute if it does not exist "}} # new local preference value def local_preference prop_get('local-preference') end # new local preference value def local_preference=(val) prop_set('local-preference', val) end # new MED value def med prop_get('med') end # new MED value def med=(val) prop_set('med', val) end # nexthop address def nexthop prop_get('nexthop') end # nexthop address def nexthop=(val) prop_set('nexthop', val) end # new route origin def origin prop_get('origin') end # new route origin def origin=(val) prop_set('origin', val) end # add AS path limit attribute if it does not exist def as_path_limit prop_get('as-path-limit') end # add AS path limit attribute if it does not exist def as_path_limit=(val) prop_set('as-path-limit', val) end end # class Update def update @subclasses['update'] ||= Update.new(parent_instance: self, create_children: @create_children) end @props={} end # class Allow def allow @subclasses['allow'] ||= Allow.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Enable"}} def name prop_get('@name') end # Enable def enable prop_get('enable') end # Enable def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Export def export @subclasses['export'] ||= Export.new(parent_instance: self, create_children: @create_children) end class ConditionalAdvertisement < ConfigClass def has_multiple_values? false end def _section :'conditional-advertisement' end class Policy < XML::ConfigClass def has_multiple_values? true end def _section :'policy' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsedBy < XML::ConfigClass def has_multiple_values? true end def _section :'used-by' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UsedBy def used_by if @create_children @subclasses['used-by'] ||= UsedBy.new(parent_instance: self, create_children: @create_children) else UsedBy.new(parent_instance: self) end end class NonExistFilters < XML::ConfigClass def has_multiple_values? true end def _section :'non-exist-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this filter"}} def name prop_get('@name') end # enble this filter def enable prop_get('enable') end # enble this filter def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NonExistFilters def non_exist_filters if @create_children @subclasses['non-exist-filters'] ||= NonExistFilters.new(parent_instance: self, create_children: @create_children) else NonExistFilters.new(parent_instance: self) end end class AdvertiseFilters < XML::ConfigClass def has_multiple_values? true end def _section :'advertise-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "disabled"=>"yes", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this filter"}} def name prop_get('@name') end # enble this filter def enable prop_get('enable') end # enble this filter def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdvertiseFilters def advertise_filters if @create_children @subclasses['advertise-filters'] ||= AdvertiseFilters.new(parent_instance: self, create_children: @create_children) else AdvertiseFilters.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this policy"}} def name prop_get('@name') end # enble this policy def enable prop_get('enable') end # enble this policy def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Policy def policy if @create_children @subclasses['policy'] ||= Policy.new(parent_instance: self, create_children: @create_children) else Policy.new(parent_instance: self) end end @props={} end # class ConditionalAdvertisement def conditional_advertisement @subclasses['conditional-advertisement'] ||= ConditionalAdvertisement.new(parent_instance: self, create_children: @create_children) end class Aggregation < ConfigClass def has_multiple_values? false end def _section :'aggregation' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AggregateRouteAttributes < ConfigClass def has_multiple_values? false end def _section :'aggregate-route-attributes' end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Remove < ConfigClass def has_multiple_values? false end def _section :'remove' end @props={} end # class Remove def remove @subclasses['remove'] ||= Remove.new(parent_instance: self, create_children: @create_children) end @props={"prepend"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=>"prepend local AS for specified number of times"}, "remove-and-prepend"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"1", "help-string"=> "remove matched AS path(s), and prepend local AS for specified number of times"}} # prepend local AS for specified number of times def prepend prop_get('prepend') end # prepend local AS for specified number of times def prepend=(val) prop_set('prepend', val) end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend prop_get('remove-and-prepend') end # remove matched AS path(s), and prepend local AS for specified number of times def remove_and_prepend=(val) prop_set('remove-and-prepend', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class RemoveAll < ConfigClass def has_multiple_values? false end def _section :'remove-all' end @props={} end # class RemoveAll def remove_all @subclasses['remove-all'] ||= RemoveAll.new(parent_instance: self, create_children: @create_children) end class Append < XML::ConfigClass def has_multiple_values? true end def _section :'append' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Append def append if @create_children @subclasses['append'] ||= Append.new(parent_instance: self, create_children: @create_children) else Append.new(parent_instance: self) end end class Overwrite < XML::ConfigClass def has_multiple_values? true end def _section :'overwrite' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"1", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Overwrite def overwrite if @create_children @subclasses['overwrite'] ||= Overwrite.new(parent_instance: self, create_children: @create_children) else Overwrite.new(parent_instance: self) end end @props={"remove-regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "help-string"=>"remove specified coummnity match regular expression"}} # remove specified coummnity match regular expression def remove_regex prop_get('remove-regex') end # remove specified coummnity match regular expression def remove_regex=(val) prop_set('remove-regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new local preference value"}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"new MED value"}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65535", "help-string"=>"new weight value"}, "nexthop"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"nexthop address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"new route origin", "enum"=> [{"value"=>"igp", "help-string"=>"route originated from IGP"}, {"value"=>"egp", "help-string"=>"route originated from EGP"}, {"value"=>"incomplete"}]}, "as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add AS path limit attribute if it does not exist "}} # new local preference value def local_preference prop_get('local-preference') end # new local preference value def local_preference=(val) prop_set('local-preference', val) end # new MED value def med prop_get('med') end # new MED value def med=(val) prop_set('med', val) end # new weight value def weight prop_get('weight') end # new weight value def weight=(val) prop_set('weight', val) end # nexthop address def nexthop prop_get('nexthop') end # nexthop address def nexthop=(val) prop_set('nexthop', val) end # new route origin def origin prop_get('origin') end # new route origin def origin=(val) prop_set('origin', val) end # add AS path limit attribute if it does not exist def as_path_limit prop_get('as-path-limit') end # add AS path limit attribute if it does not exist def as_path_limit=(val) prop_set('as-path-limit', val) end end # class AggregateRouteAttributes def aggregate_route_attributes @subclasses['aggregate-route-attributes'] ||= AggregateRouteAttributes.new(parent_instance: self, create_children: @create_children) end class SuppressFilters < XML::ConfigClass def has_multiple_values? true end def _section :'suppress-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this rule"}} def name prop_get('@name') end # enble this rule def enable prop_get('enable') end # enble this rule def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SuppressFilters def suppress_filters if @create_children @subclasses['suppress-filters'] ||= SuppressFilters.new(parent_instance: self, create_children: @create_children) else SuppressFilters.new(parent_instance: self) end end class AdvertiseFilters < XML::ConfigClass def has_multiple_values? true end def _section :'advertise-filters' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Match < ConfigClass def has_multiple_values? false end def _section :'match' end class AddressPrefix < XML::ConfigClass def has_multiple_values? true end def _section :'address-prefix' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "exact"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "help-string"=>"match exact prefix length"}} def name prop_get('@name') end # match exact prefix length def exact prop_get('exact') end # match exact prefix length def exact=(val) prop_set('exact', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressPrefix def address_prefix if @create_children @subclasses['address-prefix'] ||= AddressPrefix.new(parent_instance: self, create_children: @create_children) else AddressPrefix.new(parent_instance: self) end end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class FromPeer < XML::ConfigClass def has_multiple_values? true end def _section :'from-peer' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"filter by peer that sent this route", "autocomplete"=>"yes", "memberof"=> ["#myentry(virtual-router)/protocol/bgp/peer-group/entry/peer/entry/@name"]}} # filter by peer that sent this route def member prop_get('member') end # filter by peer that sent this route def member=(val) prop_set('member', val) end end # class FromPeer def from_peer if @create_children @subclasses['from-peer'] ||= FromPeer.new(parent_instance: self, create_children: @create_children) else FromPeer.new(parent_instance: self) end end class AsPath < ConfigClass def has_multiple_values? false end def _section :'as-path' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class AsPath def as_path @subclasses['as-path'] ||= AsPath.new(parent_instance: self, create_children: @create_children) end class Community < ConfigClass def has_multiple_values? false end def _section :'community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class Community def community @subclasses['community'] ||= Community.new(parent_instance: self, create_children: @create_children) end class ExtendedCommunity < ConfigClass def has_multiple_values? false end def _section :'extended-community' end @props={"regex"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"126", "help-string"=>"AS-path regular expression"}} # AS-path regular expression def regex prop_get('regex') end # AS-path regular expression def regex=(val) prop_set('regex', val) end end # class ExtendedCommunity def extended_community @subclasses['extended-community'] ||= ExtendedCommunity.new(parent_instance: self, create_children: @create_children) end @props={"afi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "safi"=> {"node-type"=>"element", "disabled"=>"yes", "type"=>"enum", "optional"=>"yes", "help-string"=>"Subsequent Address Family Identifier", "enum"=> [{"value"=>"ip", "help-string"=>"IPv4 (INET)"}, {"value"=>"ipv6", "help-string"=>"IPv6 (INET6)"}]}, "route-table"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"unicast", "help-string"=>"route table to match rule", "enum"=> [{"value"=>"unicast", "help-string"=>"unicast table"}, {"value"=>"multicast", "help-string"=>"multicast table"}, {"value"=>"both", "help-string"=>"both unicast and multicast tables"}]}, "med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295"}} # Address Family Identifier def afi prop_get('afi') end # Address Family Identifier def afi=(val) prop_set('afi', val) end # Subsequent Address Family Identifier def safi prop_get('safi') end # Subsequent Address Family Identifier def safi=(val) prop_set('safi', val) end # route table to match rule def route_table prop_get('route-table') end # route table to match rule def route_table=(val) prop_set('route-table', val) end def med prop_get('med') end def med=(val) prop_set('med', val) end end # class Match def match @subclasses['match'] ||= Match.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enble this rule"}} def name prop_get('@name') end # enble this rule def enable prop_get('enable') end # enble this rule def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AdvertiseFilters def advertise_filters if @create_children @subclasses['advertise-filters'] ||= AdvertiseFilters.new(parent_instance: self, create_children: @create_children) else AdvertiseFilters.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "prefix"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"aggregating address prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable aggregation for this prefix"}, "summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"summarize route"}, "as-set"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"generate AS-set attribute"}} def name prop_get('@name') end # aggregating address prefix def prefix prop_get('prefix') end # aggregating address prefix def prefix=(val) prop_set('prefix', val) end # enable aggregation for this prefix def enable prop_get('enable') end # enable aggregation for this prefix def enable=(val) prop_set('enable', val) end # summarize route def summary prop_get('summary') end # summarize route def summary=(val) prop_set('summary', val) end # generate AS-set attribute def as_set prop_get('as-set') end # generate AS-set attribute def as_set=(val) prop_set('as-set', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={} end # class Aggregation def aggregation @subclasses['aggregation'] ||= Aggregation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Policy def policy @subclasses['policy'] ||= Policy.new(parent_instance: self, create_children: @create_children) end class RedistRules < XML::ConfigClass def has_multiple_values? true end def _section :'redist-rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SetCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'set-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"10", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"4294967295", "help-string"=>"32-bit value in decimal"}, "string"=> {"regex"=> "^[0][xX][0-9A-Fa-f]{8}$|^0:[1-9][0-9]{0,4}$|^[1-9][0-9]{0,4}:[0-9]{1,5}$", "maxlen"=>"11", "help-string"=> "32-bit value in hex, or in AS:VAL format, AS and VAL each in 0-65535 range but not 0:0"}, "enum"=> [{"value"=>"no-export", "help-string"=>"well known community value: NO_EXPORT"}, {"value"=>"no-advertise", "help-string"=>"well known community value: NO_ADVERTISE"}, {"value"=>"local-as", "help-string"=>"well known community value: NO_EXPORT_SUBCONFED"}, {"value"=>"nopeer", "help-string"=>"well known community value: NOPEER"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SetCommunity def set_community if @create_children @subclasses['set-community'] ||= SetCommunity.new(parent_instance: self, create_children: @create_children) else SetCommunity.new(parent_instance: self) end end class SetExtendedCommunity < XML::ConfigClass def has_multiple_values? true end def _section :'set-extended-community' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5", "multi-types"=> {"string"=> {"regex"=> "^([0][xX][A-Fa-f0-9]{16,16})|(([0-9]+|target|origin):[0-9]+(\\.[0-9]+)?:[0-9]+)$", "maxlen"=>"40", "help-string"=> "64-bit value in hex, or one of TYPE:AS:VAL, TYPE:IP:VAL, TYPE:A.B:VAL format, TYPE is 'target', 'origin' or decimal number (0-65535)"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SetExtendedCommunity def set_extended_community if @create_children @subclasses['set-extended-community'] ||= SetExtendedCommunity.new(parent_instance: self, create_children: @create_children) else SetExtendedCommunity.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#protocol/redist-profile/entry/@name", "#protocol/redist-profile-ipv6/entry/@name", "#protocol/redist-profile-ipv6/entry/@name"], "multi-types"=> {"string"=> {"subtype"=>"object-name", "help-string"=>"redistribute routes using redist-profile"}, "ipspec"=> {"subnet-only"=>"yes", "help-string"=>"generate subnet for redistribution"}}}, "address-family-identifier"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "help-string"=>"select redistribution profile type", "enum"=> [{"value"=>"ipv4", "help-string"=>"choose IPv4 redistribution profiles"}, {"value"=>"ipv6", "help-string"=>"choose IPv6 redistribution profile"}]}, "route-table"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"unicast", "help-string"=>"select destination SAFI for redistribution", "enum"=> [{"value"=>"unicast", "help-string"=>"redistribute as unicast route"}, {"value"=>"multicast", "help-string"=>"redistribute as multicast route"}, {"value"=>"both", "help-string"=>"redistribute as both unicast and multicast route"}]}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "set-origin"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"incomplete", "help-string"=>"add the ORIGIN path attribute", "enum"=> [{"value"=>"igp", "help-string"=>"Path interior to originating AS"}, {"value"=>"egp", "help-string"=>"Path learned via EGP protocol"}, {"value"=>"incomplete", "help-string"=>"Path was learned by some other means"}]}, "set-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"add the MULTI_EXIT_DISC path attribute"}, "set-local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "help-string"=>"add the LOCAL_PREF path attribute"}, "set-as-path-limit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "help-string"=>"add the AS_PATHLIMIT path attribute"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"metric value"}} def name prop_get('@name') end # select redistribution profile type def address_family_identifier prop_get('address-family-identifier') end # select redistribution profile type def address_family_identifier=(val) prop_set('address-family-identifier', val) end # select destination SAFI for redistribution def route_table prop_get('route-table') end # select destination SAFI for redistribution def route_table=(val) prop_set('route-table', val) end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # add the ORIGIN path attribute def set_origin prop_get('set-origin') end # add the ORIGIN path attribute def set_origin=(val) prop_set('set-origin', val) end # add the MULTI_EXIT_DISC path attribute def set_med prop_get('set-med') end # add the MULTI_EXIT_DISC path attribute def set_med=(val) prop_set('set-med', val) end # add the LOCAL_PREF path attribute def set_local_preference prop_get('set-local-preference') end # add the LOCAL_PREF path attribute def set_local_preference=(val) prop_set('set-local-preference', val) end # add the AS_PATHLIMIT path attribute def set_as_path_limit prop_get('set-as-path-limit') end # add the AS_PATHLIMIT path attribute def set_as_path_limit=(val) prop_set('set-as-path-limit', val) end # metric value def metric prop_get('metric') end # metric value def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistRules def redist_rules if @create_children @subclasses['redist-rules'] ||= RedistRules.new(parent_instance: self, create_children: @create_children) else RedistRules.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this BGP instance", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "local-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"local AS number", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/as-number]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "rangedint"=>{"min"=>"1", "max"=>"4294967295"}}}, "reject-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"do not learn default route from BGP", "type"=>"bool", "default"=>"yes"}, "allow-redist-default-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"allow redistribute default route to BGP", "type"=>"bool", "default"=>"no"}, "install-route"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Populate BGP learned route to global route table", "type"=>"bool", "default"=>"no"}, "ecmp-multi-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Support multiple AS in ECMP", "type"=>"bool", "default"=>"no"}, "enforce-first-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enforce First AS for EBGP", "type"=>"bool", "default"=>"yes"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # router id of this BGP instance def router_id prop_get('router-id') end # router id of this BGP instance def router_id=(val) prop_set('router-id', val) end # local AS number def local_as prop_get('local-as') end # local AS number def local_as=(val) prop_set('local-as', val) end # do not learn default route from BGP def reject_default_route prop_get('reject-default-route') end # do not learn default route from BGP def reject_default_route=(val) prop_set('reject-default-route', val) end # allow redistribute default route to BGP def allow_redist_default_route prop_get('allow-redist-default-route') end # allow redistribute default route to BGP def allow_redist_default_route=(val) prop_set('allow-redist-default-route', val) end # Populate BGP learned route to global route table def install_route prop_get('install-route') end # Populate BGP learned route to global route table def install_route=(val) prop_set('install-route', val) end # Support multiple AS in ECMP def ecmp_multi_as prop_get('ecmp-multi-as') end # Support multiple AS in ECMP def ecmp_multi_as=(val) prop_set('ecmp-multi-as', val) end # Enforce First AS for EBGP def enforce_first_as prop_get('enforce-first-as') end # Enforce First AS for EBGP def enforce_first_as=(val) prop_set('enforce-first-as', val) end end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class AdminDists < ConfigClass def has_multiple_values? false end def _section :'admin-dists' end @props={"static"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"10", "help-string"=>"administrative distance used for static routes"}, "static-ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"10", "help-string"=>"administrative distance used for ipv6 static routes"}, "ospf-int"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"30", "help-string"=>"administrative distance used for OSPF internal routes"}, "ospf-ext"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"110", "help-string"=>"administrative distance used for OSPF external routes"}, "ospfv3-int"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"30", "help-string"=>"administrative distance used for OSPFv3 internal routes"}, "ospfv3-ext"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"110", "help-string"=>"administrative distance used for OSPFv3 external routes"}, "ibgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"200", "help-string"=>"administrative distance used for iBGP routes"}, "ebgp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"20", "help-string"=>"administrative distance used for eBGP routes"}, "rip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "default"=>"120", "help-string"=>"administrative distance used for RIP routes"}} # administrative distance used for static routes def static prop_get('static') end # administrative distance used for static routes def static=(val) prop_set('static', val) end # administrative distance used for ipv6 static routes def static_ipv6 prop_get('static-ipv6') end # administrative distance used for ipv6 static routes def static_ipv6=(val) prop_set('static-ipv6', val) end # administrative distance used for OSPF internal routes def ospf_int prop_get('ospf-int') end # administrative distance used for OSPF internal routes def ospf_int=(val) prop_set('ospf-int', val) end # administrative distance used for OSPF external routes def ospf_ext prop_get('ospf-ext') end # administrative distance used for OSPF external routes def ospf_ext=(val) prop_set('ospf-ext', val) end # administrative distance used for OSPFv3 internal routes def ospfv3_int prop_get('ospfv3-int') end # administrative distance used for OSPFv3 internal routes def ospfv3_int=(val) prop_set('ospfv3-int', val) end # administrative distance used for OSPFv3 external routes def ospfv3_ext prop_get('ospfv3-ext') end # administrative distance used for OSPFv3 external routes def ospfv3_ext=(val) prop_set('ospfv3-ext', val) end # administrative distance used for iBGP routes def ibgp prop_get('ibgp') end # administrative distance used for iBGP routes def ibgp=(val) prop_set('ibgp', val) end # administrative distance used for eBGP routes def ebgp prop_get('ebgp') end # administrative distance used for eBGP routes def ebgp=(val) prop_set('ebgp', val) end # administrative distance used for RIP routes def rip prop_get('rip') end # administrative distance used for RIP routes def rip=(val) prop_set('rip', val) end end # class AdminDists def admin_dists @subclasses['admin-dists'] ||= AdminDists.new(parent_instance: self, create_children: @create_children) end class Ecmp < ConfigClass def has_multiple_values? false end def _section :'ecmp' end class Algorithm < ConfigClass def has_multiple_values? false end def _section :'algorithm' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"src-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"only use source address for hash", "uiHint-fieldLabel"=>"Use Source Address Only"}, "use-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"use source/destination port for hash"}, "hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"0", "help-string"=>"User-specified hash seed"}} # only use source address for hash def src_only prop_get('src-only') end # only use source address for hash def src_only=(val) prop_set('src-only', val) end # use source/destination port for hash def use_port prop_get('use-port') end # use source/destination port for hash def use_port=(val) prop_set('use-port', val) end # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end class WeightedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'weighted-round-robin' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../interface/member"]}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"100", "help-string"=>"interface ECMP weight"}} # interface name def name prop_get('@name') end # interface ECMP weight def weight prop_get('weight') end # interface ECMP weight def weight=(val) prop_set('weight', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class WeightedRoundRobin def weighted_round_robin @subclasses['weighted-round-robin'] ||= WeightedRoundRobin.new(parent_instance: self, create_children: @create_children) end class BalancedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'balanced-round-robin' end @props={} end # class BalancedRoundRobin def balanced_round_robin @subclasses['balanced-round-robin'] ||= BalancedRoundRobin.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart"}, "max-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"4", "default"=>"2", "help-string"=> "Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart"}, "symmetric-return"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "allows return packets to egress out of the ingress interface of the flow"}, "strict-source-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "force VPN traffic to exit interface that the source-ip belongs to"}} # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable prop_get('enable') end # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable=(val) prop_set('enable', val) end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path prop_get('max-path') end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path=(val) prop_set('max-path', val) end # allows return packets to egress out of the ingress interface of the flow def symmetric_return prop_get('symmetric-return') end # allows return packets to egress out of the ingress interface of the flow def symmetric_return=(val) prop_set('symmetric-return', val) end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path prop_get('strict-source-path') end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path=(val) prop_set('strict-source-path', val) end end # class Ecmp def ecmp @subclasses['ecmp'] ||= Ecmp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VirtualRouter def virtual_router if @create_children @subclasses['virtual-router'] ||= VirtualRouter.new(parent_instance: self, create_children: @create_children) else VirtualRouter.new(parent_instance: self) end end class LogicalRouter < XML::ConfigClass def has_multiple_values? true end def _section :'logical-router' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vrf < XML::ConfigClass def has_multiple_values? true end def _section :'vrf' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class Med < ConfigClass def has_multiple_values? false end def _section :'med' end @props={"always-compare-med"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"always compare MEDs"}, "deterministic-med-comparison"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"deterministic MEDs comparison"}} # always compare MEDs def always_compare_med prop_get('always-compare-med') end # always compare MEDs def always_compare_med=(val) prop_set('always-compare-med', val) end # deterministic MEDs comparison def deterministic_med_comparison prop_get('deterministic-med-comparison') end # deterministic MEDs comparison def deterministic_med_comparison=(val) prop_set('deterministic-med-comparison', val) end end # class Med def med @subclasses['med'] ||= Med.new(parent_instance: self, create_children: @create_children) end class GracefulRestart < ConfigClass def has_multiple_values? false end def _section :'graceful-restart' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "stale-route-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=> "time to remove stale routes after peer restart (in seconds)"}, "max-peer-restart-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"120", "help-string"=>"maximum of peer restart time accepted (in seconds)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # time to remove stale routes after peer restart (in seconds) def stale_route_time prop_get('stale-route-time') end # time to remove stale routes after peer restart (in seconds) def stale_route_time=(val) prop_set('stale-route-time', val) end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time prop_get('max-peer-restart-time') end # maximum of peer restart time accepted (in seconds) def max_peer_restart_time=(val) prop_set('max-peer-restart-time', val) end end # class GracefulRestart def graceful_restart @subclasses['graceful-restart'] ||= GracefulRestart.new(parent_instance: self, create_children: @create_children) end class PeerGroup < XML::ConfigClass def has_multiple_values? true end def _section :'peer-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Ibgp < ConfigClass def has_multiple_values? false end def _section :'ibgp' end @props={} end # class Ibgp def ibgp @subclasses['ibgp'] ||= Ibgp.new(parent_instance: self, create_children: @create_children) end class Ebgp < ConfigClass def has_multiple_values? false end def _section :'ebgp' end @props={} end # class Ebgp def ebgp @subclasses['ebgp'] ||= Ebgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end class AddressFamily < ConfigClass def has_multiple_values? false end def _section :'address-family' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv4/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv6/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class AddressFamily def address_family @subclasses['address-family'] ||= AddressFamily.new(parent_instance: self, create_children: @create_children) end class ConnectionOptions < ConfigClass def has_multiple_values? false end def _section :'connection-options' end @props={"timers"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Timer Profile", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Timer Profile Name", "autocomplete"=>"yes", "memberof"=>["#network/routing-profile/bgp/timer-profile/entry/@name"]}, "multihop"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Multi Hop", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"255", "default"=>"0", "help-string"=>"Multi-hop value"}, "authentication"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Auth Profile", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Authentication Profile Name", "autocomplete"=>"yes", "memberof"=>["#network/routing-profile/bgp/auth-profile/entry/@name"]}} # Timer Profile Name def timers prop_get('timers') end # Timer Profile Name def timers=(val) prop_set('timers', val) end # Multi-hop value def multihop prop_get('multihop') end # Multi-hop value def multihop=(val) prop_set('multihop', val) end # Authentication Profile Name def authentication prop_get('authentication') end # Authentication Profile Name def authentication=(val) prop_set('authentication', val) end end # class ConnectionOptions def connection_options @subclasses['connection-options'] ||= ConnectionOptions.new(parent_instance: self, create_children: @create_children) end class Peer < XML::ConfigClass def has_multiple_values? true end def _section :'peer' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AddressFamily < ConfigClass def has_multiple_values? false end def _section :'address-family' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv4/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Address Family Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/address-family-profile/entry[ipv6/unicast]/@name"]}} # Address Family Profile Name def unicast prop_get('unicast') end # Address Family Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={"inherit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Inherit AFI/SAFI config from peer-group"}} # Inherit AFI/SAFI config from peer-group def inherit prop_get('inherit') end # Inherit AFI/SAFI config from peer-group def inherit=(val) prop_set('inherit', val) end end # class AddressFamily def address_family @subclasses['address-family'] ||= AddressFamily.new(parent_instance: self, create_children: @create_children) end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"interface to accept BGP session", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"50", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ip/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name"]}} # interface to accept BGP session def interface prop_get('interface') end # interface to accept BGP session def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class PeerAddress < ConfigClass def has_multiple_values? false end def _section :'peer-address' end @props={"ip"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"peer address configuration", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # peer address configuration def ip prop_get('ip') end # peer address configuration def ip=(val) prop_set('ip', val) end end # class PeerAddress def peer_address @subclasses['peer-address'] ||= PeerAddress.new(parent_instance: self, create_children: @create_children) end class ConnectionOptions < ConfigClass def has_multiple_values? false end def _section :'connection-options' end @props={"timers"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Timer Profile", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Timer Profile Name", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{}, "enum"=> [{"value"=>"inherit", "help-string"=>"Inherit from Peer-Group"}]}}, "multihop"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Multi Hop", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Multi-hop value", "multi-types"=> {"rangedint"=> {"min"=>"0", "max"=>"255", "default"=>"0", "help-string"=> "IP TTL value used for sending BGP packet. set to 0 means eBGP use 1, iBGP use 255"}, "enum"=> [{"value"=>"inherit", "help-string"=>"Inherit from Peer-Group"}]}}, "authentication"=> {"node-type"=>"element", "uiHint-fieldLabel"=>"Auth Profile", "type"=>"multiple", "optional"=>"yes", "help-string"=>"Authentication Profile Name", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=> [{"value"=>"inherit", "help-string"=>"Inherit from Peer-Group"}]}}} # Timer Profile Name def timers prop_get('timers') end # Timer Profile Name def timers=(val) prop_set('timers', val) end # Multi-hop value def multihop prop_get('multihop') end # Multi-hop value def multihop=(val) prop_set('multihop', val) end # Authentication Profile Name def authentication prop_get('authentication') end # Authentication Profile Name def authentication=(val) prop_set('authentication', val) end end # class ConnectionOptions def connection_options @subclasses['connection-options'] ||= ConnectionOptions.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "peer-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=>"Peer AS number"}, "enable-sender-side-loop-detection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Peer AS number def peer_as prop_get('peer-as') end # Peer AS number def peer_as=(val) prop_set('peer-as', val) end def enable_sender_side_loop_detection prop_get('enable-sender-side-loop-detection') end def enable_sender_side_loop_detection=(val) prop_set('enable-sender-side-loop-detection', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Peer def peer if @create_children @subclasses['peer'] ||= Peer.new(parent_instance: self, create_children: @create_children) else Peer.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PeerGroup def peer_group if @create_children @subclasses['peer-group'] ||= PeerGroup.new(parent_instance: self, create_children: @create_children) else PeerGroup.new(parent_instance: self) end end class RedistributionRule < ConfigClass def has_multiple_values? false end def _section :'redistribution-rule' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Redistribution Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/redistribution-profile/entry[ipv4/unicast]/@name"]}} # Redistribution Profile Name def unicast prop_get('unicast') end # Redistribution Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end @props={"unicast"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=>"Redistribution Profile Name", "autocomplete"=>"yes", "memberof"=> ["#network/routing-profile/bgp/redistribution-profile/entry[ipv6/unicast]/@name"]}} # Redistribution Profile Name def unicast prop_get('unicast') end # Redistribution Profile Name def unicast=(val) prop_set('unicast', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class RedistributionRule def redistribution_rule @subclasses['redistribution-rule'] ||= RedistributionRule.new(parent_instance: self, create_children: @create_children) end class AddressFamilyIdentifier < ConfigClass def has_multiple_values? false end def _section :'address-family-identifier' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end class Network < XML::ConfigClass def has_multiple_values? true end def _section :'network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "subnet-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"Destination IP address/prefix"}, "unicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Unicast Network configuration"}} # Destination IP address/prefix def name prop_get('@name') end # Unicast Network configuration def unicast prop_get('unicast') end # Unicast Network configuration def unicast=(val) prop_set('unicast', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Network def network if @create_children @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) else Network.new(parent_instance: self) end end @props={} end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Network < XML::ConfigClass def has_multiple_values? true end def _section :'network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "subnet-only"=>"yes", "ipv6-only"=>"yes", "help-string"=>"Destination IP address/prefix"}, "unicast"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Unicast Network configuration"}} # Destination IP address/prefix def name prop_get('@name') end # Unicast Network configuration def unicast prop_get('unicast') end # Unicast Network configuration def unicast=(val) prop_set('unicast', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Network def network if @create_children @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) else Network.new(parent_instance: self) end end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class AddressFamilyIdentifier def address_family_identifier @subclasses['address-family-identifier'] ||= AddressFamilyIdentifier.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "router-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"router id of this BGP instance", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "enforce-first-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enforce First AS for EBGP", "type"=>"bool", "default"=>"yes"}, "fast-external-failover"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=> "Immediately reset session if a link to a directly connected external peer goes down", "type"=>"bool", "default"=>"yes"}, "ecmp-multi-as"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Support multiple AS in ECMP", "type"=>"bool", "default"=>"no"}, "local-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "help-string"=>"local AS number"}, "default-local-preference"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"100", "help-string"=>"default local preference"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # router id of this BGP instance def router_id prop_get('router-id') end # router id of this BGP instance def router_id=(val) prop_set('router-id', val) end # Enforce First AS for EBGP def enforce_first_as prop_get('enforce-first-as') end # Enforce First AS for EBGP def enforce_first_as=(val) prop_set('enforce-first-as', val) end # Immediately reset session if a link to a directly connected external peer goes down def fast_external_failover prop_get('fast-external-failover') end # Immediately reset session if a link to a directly connected external peer goes down def fast_external_failover=(val) prop_set('fast-external-failover', val) end # Support multiple AS in ECMP def ecmp_multi_as prop_get('ecmp-multi-as') end # Support multiple AS in ECMP def ecmp_multi_as=(val) prop_set('ecmp-multi-as', val) end # local AS number def local_as prop_get('local-as') end # local AS number def local_as=(val) prop_set('local-as', val) end # default local preference def default_local_preference prop_get('default-local-preference') end # default local preference def default_local_preference=(val) prop_set('default-local-preference', val) end end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end class RoutingTable < ConfigClass def has_multiple_values? false end def _section :'routing-table' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#network/interface/$ifname/ip/entry/@name"], "multi-types"=> {"string"=>{}, "enum"=>[{"value"=>"DHCP", "help-string"=>"Use DHCP Client address"}]}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':'))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry[layer3]/@name", "#network/interface/ethernet/entry/layer3/units/entry/@name", "#network/interface/aggregate-ethernet/entry[layer3]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#network/interface/vlan/units/entry/@name", "string('vlan')", "#network/interface/loopback/units/entry/@name", "string('loopback')", "#network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class StaticRoute < XML::ConfigClass def has_multiple_values? true end def _section :'static-route' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Nexthop < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop' end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end @props={"ipv6-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(ip-netmask and contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Next hop IP address def ipv6_address prop_get('ipv6-address') end # Next hop IP address def ipv6_address=(val) prop_set('ipv6-address', val) end end # class Nexthop def nexthop if @create_children @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) else Nexthop.new(parent_instance: self) end end class PathMonitor < ConfigClass def has_multiple_values? false end def _section :'path-monitor' end class MonitorDestinations < XML::ConfigClass def has_multiple_values? true end def _section :'monitor-destinations' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Source IP address", "autocomplete"=>"yes", "memberof"=> ["#network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry/@name", "#network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry/@name", "#network/interface/$ifname/ipv6/address/entry/@name"], "multi-types"=>{"string"=>{}}}, "destination"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"Destination IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[contains(ip-netmask, ':')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"3", "help-string"=>"ping interval"}, "count"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"3", "max"=>"10", "default"=>"5", "help-string"=>"ping count"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Source IP address def source prop_get('source') end # Source IP address def source=(val) prop_set('source', val) end # Destination IP address def destination prop_get('destination') end # Destination IP address def destination=(val) prop_set('destination', val) end # ping interval def interval prop_get('interval') end # ping interval def interval=(val) prop_set('interval', val) end # ping count def count prop_get('count') end # ping count def count=(val) prop_set('count', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MonitorDestinations def monitor_destinations if @create_children @subclasses['monitor-destinations'] ||= MonitorDestinations.new(parent_instance: self, create_children: @create_children) else MonitorDestinations.new(parent_instance: self) end end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "failure-condition"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"any", "help-string"=>"failure condition", "enum"=>[{"value"=>"any"}, {"value"=>"all"}]}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"1440", "default"=>"2", "help-string"=>"hold time (minutes)"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # failure condition def failure_condition prop_get('failure-condition') end # failure condition def failure_condition=(val) prop_set('failure-condition', val) end # hold time (minutes) def hold_time prop_get('hold-time') end # hold time (minutes) def hold_time=(val) prop_set('hold-time', val) end end # class PathMonitor def path_monitor @subclasses['path-monitor'] ||= PathMonitor.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [0-9a-zA-Z._-]"}, "destination"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Destination IP address/prefix", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "interface"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#myentry(vrf)/interface/member"]}, "admin-dist"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"10", "max"=>"240", "help-string"=>"adminitrative distance"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"metric value (path cost)"}} # alphanumeric string [0-9a-zA-Z._-] def name prop_get('@name') end # Destination IP address/prefix def destination prop_get('destination') end # Destination IP address/prefix def destination=(val) prop_set('destination', val) end def interface prop_get('interface') end def interface=(val) prop_set('interface', val) end # adminitrative distance def admin_dist prop_get('admin-dist') end # adminitrative distance def admin_dist=(val) prop_set('admin-dist', val) end # metric value (path cost) def metric prop_get('metric') end # metric value (path cost) def metric=(val) prop_set('metric', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticRoute def static_route if @create_children @subclasses['static-route'] ||= StaticRoute.new(parent_instance: self, create_children: @create_children) else StaticRoute.new(parent_instance: self) end end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class RoutingTable def routing_table @subclasses['routing-table'] ||= RoutingTable.new(parent_instance: self, create_children: @create_children) end class Ecmp < ConfigClass def has_multiple_values? false end def _section :'ecmp' end class Algorithm < ConfigClass def has_multiple_values? false end def _section :'algorithm' end class IpModulo < ConfigClass def has_multiple_values? false end def _section :'ip-modulo' end @props={} end # class IpModulo def ip_modulo @subclasses['ip-modulo'] ||= IpModulo.new(parent_instance: self, create_children: @create_children) end class IpHash < ConfigClass def has_multiple_values? false end def _section :'ip-hash' end @props={"src-only"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"only use source address for hash", "uiHint-fieldLabel"=>"Use Source Address Only"}, "use-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=>"use source/destination port for hash"}, "hash-seed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4294967295", "default"=>"0", "help-string"=>"User-specified hash seed"}} # only use source address for hash def src_only prop_get('src-only') end # only use source address for hash def src_only=(val) prop_set('src-only', val) end # use source/destination port for hash def use_port prop_get('use-port') end # use source/destination port for hash def use_port=(val) prop_set('use-port', val) end # User-specified hash seed def hash_seed prop_get('hash-seed') end # User-specified hash seed def hash_seed=(val) prop_set('hash-seed', val) end end # class IpHash def ip_hash @subclasses['ip-hash'] ||= IpHash.new(parent_instance: self, create_children: @create_children) end class WeightedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'weighted-round-robin' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"interface name", "autocomplete"=>"yes", "memberof"=>["../../../../../interface/member"]}, "weight"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"255", "default"=>"100", "help-string"=>"interface ECMP weight"}} # interface name def name prop_get('@name') end # interface ECMP weight def weight prop_get('weight') end # interface ECMP weight def weight=(val) prop_set('weight', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class WeightedRoundRobin def weighted_round_robin @subclasses['weighted-round-robin'] ||= WeightedRoundRobin.new(parent_instance: self, create_children: @create_children) end class BalancedRoundRobin < ConfigClass def has_multiple_values? false end def _section :'balanced-round-robin' end @props={} end # class BalancedRoundRobin def balanced_round_robin @subclasses['balanced-round-robin'] ||= BalancedRoundRobin.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart"}, "max-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"2", "max"=>"4", "default"=>"2", "help-string"=> "Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart"}, "symmetric-return"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "allows return packets to egress out of the ingress interface of the flow"}, "strict-source-path"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"false", "help-string"=> "force VPN traffic to exit interface that the source-ip belongs to"}} # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable prop_get('enable') end # enable Equal Cost Multipath routing, change this configuration will result in a virtual router restart def enable=(val) prop_set('enable', val) end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path prop_get('max-path') end # Maxmum number of ECMP paths supported, change this configuration will result in a virtual router restart def max_path=(val) prop_set('max-path', val) end # allows return packets to egress out of the ingress interface of the flow def symmetric_return prop_get('symmetric-return') end # allows return packets to egress out of the ingress interface of the flow def symmetric_return=(val) prop_set('symmetric-return', val) end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path prop_get('strict-source-path') end # force VPN traffic to exit interface that the source-ip belongs to def strict_source_path=(val) prop_set('strict-source-path', val) end end # class Ecmp def ecmp @subclasses['ecmp'] ||= Ecmp.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"multiple", "subtype"=>"object-name", "help-string"=>"VRF Name", "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"default", "help-string"=>"Default VRF"}]}}} # VRF Name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vrf def vrf if @create_children @subclasses['vrf'] ||= Vrf.new(parent_instance: self, create_children: @create_children) else Vrf.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogicalRouter def logical_router if @create_children @subclasses['logical-router'] ||= LogicalRouter.new(parent_instance: self, create_children: @create_children) else LogicalRouter.new(parent_instance: self) end end class RoutingProfile < ConfigClass def has_multiple_values? false end def _section :'routing-profile' end class Bgp < ConfigClass def has_multiple_values? false end def _section :'bgp' end class AuthProfile < XML::ConfigClass def has_multiple_values? true end def _section :'auth-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31"}, "secret"=> {"node-type"=>"element", "optional"=>"yes", "encrypt"=>"yes", "skip-commit-validation"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9!@#%^])+$", "ui-hint"=>"regexText:\"Only alphanumeric and !@#%^ are allowed to use\"", "maxlen"=>"63", "help-string"=> "shared secret for the TCP MD5 authentication, [a-zA-Z0-9!@#%^]"}} def name prop_get('@name') end # shared secret for the TCP MD5 authentication, [a-zA-Z0-9!@#%^] def secret prop_get('secret') end # shared secret for the TCP MD5 authentication, [a-zA-Z0-9!@#%^] def secret=(val) prop_set('secret', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthProfile def auth_profile if @create_children @subclasses['auth-profile'] ||= AuthProfile.new(parent_instance: self, create_children: @create_children) else AuthProfile.new(parent_instance: self) end end class TimerProfile < XML::ConfigClass def has_multiple_values? true end def _section :'timer-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"Timer Profile Name"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"30", "help-string"=>"keep-alive interval (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"1", "max"=>"1200", "default"=>"30"}}}, "hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"90", "help-string"=>"hold time (in seconds)", "multi-types"=>{"rangedint"=>{"min"=>"3", "max"=>"3600", "default"=>"90"}}}, "min-route-adv-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"30", "help-string"=>"Minimum Route Advertisement Interval (in seconds)"}} # Timer Profile Name def name prop_get('@name') end # keep-alive interval (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # keep-alive interval (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # hold time (in seconds) def hold_time prop_get('hold-time') end # hold time (in seconds) def hold_time=(val) prop_set('hold-time', val) end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval prop_get('min-route-adv-interval') end # Minimum Route Advertisement Interval (in seconds) def min_route_adv_interval=(val) prop_set('min-route-adv-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TimerProfile def timer_profile if @create_children @subclasses['timer-profile'] ||= TimerProfile.new(parent_instance: self, create_children: @create_children) else TimerProfile.new(parent_instance: self) end end class AddressFamilyProfile < XML::ConfigClass def has_multiple_values? true end def _section :'address-family-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class AddPath < ConfigClass def has_multiple_values? false end def _section :'add-path' end @props={"tx-all-paths"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise all paths to a peer"}, "tx-bestpath-per-AS"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise the bestpath per each neighboring AS"}} # Advertise all paths to a peer def tx_all_paths prop_get('tx-all-paths') end # Advertise all paths to a peer def tx_all_paths=(val) prop_set('tx-all-paths', val) end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS prop_get('tx-bestpath-per-AS') end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS=(val) prop_set('tx-bestpath-per-AS', val) end end # class AddPath def add_path @subclasses['add-path'] ||= AddPath.new(parent_instance: self, create_children: @create_children) end class AllowasIn < ConfigClass def has_multiple_values? false end def _section :'allowas-in' end class Origin < ConfigClass def has_multiple_values? false end def _section :'origin' end @props={} end # class Origin def origin @subclasses['origin'] ||= Origin.new(parent_instance: self, create_children: @create_children) end @props={"occurrence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"1", "help-string"=>"Number of occurrences of AS number"}} # Number of occurrences of AS number def occurrence prop_get('occurrence') end # Number of occurrences of AS number def occurrence=(val) prop_set('occurrence', val) end end # class AllowasIn def allowas_in @subclasses['allowas-in'] ||= AllowasIn.new(parent_instance: self, create_children: @create_children) end class MaximumPrefix < ConfigClass def has_multiple_values? false end def _section :'maximum-prefix' end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class WarningOnly < ConfigClass def has_multiple_values? false end def _section :'warning-only' end @props={} end # class WarningOnly def warning_only @subclasses['warning-only'] ||= WarningOnly.new(parent_instance: self, create_children: @create_children) end class Restart < ConfigClass def has_multiple_values? false end def _section :'restart' end @props={"interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1", "help-string"=>"Restart interval in minutes"}} # Restart interval in minutes def interval prop_get('interval') end # Restart interval in minutes def interval=(val) prop_set('interval', val) end end # class Restart def restart @subclasses['restart'] ||= Restart.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"num_prefixes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "default"=>"1000", "help-string"=>"Max allowed prefixes from this peer"}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"100", "default"=>"100", "help-string"=>"Threshold value (%) at which to generate a warning msg"}} # Max allowed prefixes from this peer def num_prefixes prop_get('num_prefixes') end # Max allowed prefixes from this peer def num_prefixes=(val) prop_set('num_prefixes', val) end # Threshold value (%) at which to generate a warning msg def threshold prop_get('threshold') end # Threshold value (%) at which to generate a warning msg def threshold=(val) prop_set('threshold', val) end end # class MaximumPrefix def maximum_prefix @subclasses['maximum-prefix'] ||= MaximumPrefix.new(parent_instance: self, create_children: @create_children) end class NextHop < ConfigClass def has_multiple_values? false end def _section :'next-hop' end class Self < ConfigClass def has_multiple_values? false end def _section :'self' end @props={} end # class Self def self @subclasses['self'] ||= Self.new(parent_instance: self, create_children: @create_children) end class SelfForce < ConfigClass def has_multiple_values? false end def _section :'self-force' end @props={} end # class SelfForce def self_force @subclasses['self-force'] ||= SelfForce.new(parent_instance: self, create_children: @create_children) end @props={} end # class NextHop def next_hop @subclasses['next-hop'] ||= NextHop.new(parent_instance: self, create_children: @create_children) end class RemovePrivateAS < ConfigClass def has_multiple_values? false end def _section :'remove-private-AS' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class ReplaceAS < ConfigClass def has_multiple_values? false end def _section :'replace-AS' end @props={} end # class ReplaceAS def replace_AS @subclasses['replace-AS'] ||= ReplaceAS.new(parent_instance: self, create_children: @create_children) end @props={} end # class RemovePrivateAS def remove_private_AS @subclasses['remove-private-AS'] ||= RemovePrivateAS.new(parent_instance: self, create_children: @create_children) end class SendCommunity < ConfigClass def has_multiple_values? false end def _section :'send-community' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class Both < ConfigClass def has_multiple_values? false end def _section :'both' end @props={} end # class Both def both @subclasses['both'] ||= Both.new(parent_instance: self, create_children: @create_children) end class Extended < ConfigClass def has_multiple_values? false end def _section :'extended' end @props={} end # class Extended def extended @subclasses['extended'] ||= Extended.new(parent_instance: self, create_children: @create_children) end class Large < ConfigClass def has_multiple_values? false end def _section :'large' end @props={} end # class Large def large @subclasses['large'] ||= Large.new(parent_instance: self, create_children: @create_children) end class Standard < ConfigClass def has_multiple_values? false end def _section :'standard' end @props={} end # class Standard def standard @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) end @props={} end # class SendCommunity def send_community @subclasses['send-community'] ||= SendCommunity.new(parent_instance: self, create_children: @create_children) end @props={"as-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Override ASNs in outbound updates if AS-Path equals Remote-AS"}, "default-originate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Originate Default Route"}, "route-reflector-client"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Route Reflector Client"}} # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override prop_get('as-override') end # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override=(val) prop_set('as-override', val) end # Originate Default Route def default_originate prop_get('default-originate') end # Originate Default Route def default_originate=(val) prop_set('default-originate', val) end # Route Reflector Client def route_reflector_client prop_get('route-reflector-client') end # Route Reflector Client def route_reflector_client=(val) prop_set('route-reflector-client', val) end end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class AddPath < ConfigClass def has_multiple_values? false end def _section :'add-path' end @props={"tx-all-paths"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise all paths to a peer"}, "tx-bestpath-per-AS"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Advertise the bestpath per each neighboring AS"}} # Advertise all paths to a peer def tx_all_paths prop_get('tx-all-paths') end # Advertise all paths to a peer def tx_all_paths=(val) prop_set('tx-all-paths', val) end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS prop_get('tx-bestpath-per-AS') end # Advertise the bestpath per each neighboring AS def tx_bestpath_per_AS=(val) prop_set('tx-bestpath-per-AS', val) end end # class AddPath def add_path @subclasses['add-path'] ||= AddPath.new(parent_instance: self, create_children: @create_children) end class AllowasIn < ConfigClass def has_multiple_values? false end def _section :'allowas-in' end class Origin < ConfigClass def has_multiple_values? false end def _section :'origin' end @props={} end # class Origin def origin @subclasses['origin'] ||= Origin.new(parent_instance: self, create_children: @create_children) end @props={"occurrence"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"10", "default"=>"1", "help-string"=>"Number of occurrences of AS number"}} # Number of occurrences of AS number def occurrence prop_get('occurrence') end # Number of occurrences of AS number def occurrence=(val) prop_set('occurrence', val) end end # class AllowasIn def allowas_in @subclasses['allowas-in'] ||= AllowasIn.new(parent_instance: self, create_children: @create_children) end class MaximumPrefix < ConfigClass def has_multiple_values? false end def _section :'maximum-prefix' end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class WarningOnly < ConfigClass def has_multiple_values? false end def _section :'warning-only' end @props={} end # class WarningOnly def warning_only @subclasses['warning-only'] ||= WarningOnly.new(parent_instance: self, create_children: @create_children) end class Restart < ConfigClass def has_multiple_values? false end def _section :'restart' end @props={"interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1", "help-string"=>"Restart interval in minutes"}} # Restart interval in minutes def interval prop_get('interval') end # Restart interval in minutes def interval=(val) prop_set('interval', val) end end # class Restart def restart @subclasses['restart'] ||= Restart.new(parent_instance: self, create_children: @create_children) end @props={} end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"num_prefixes"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"4294967295", "default"=>"1000", "help-string"=>"Max allowed prefixes from this peer"}, "threshold"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"100", "default"=>"100", "help-string"=>"Threshold value (%) at which to generate a warning msg"}} # Max allowed prefixes from this peer def num_prefixes prop_get('num_prefixes') end # Max allowed prefixes from this peer def num_prefixes=(val) prop_set('num_prefixes', val) end # Threshold value (%) at which to generate a warning msg def threshold prop_get('threshold') end # Threshold value (%) at which to generate a warning msg def threshold=(val) prop_set('threshold', val) end end # class MaximumPrefix def maximum_prefix @subclasses['maximum-prefix'] ||= MaximumPrefix.new(parent_instance: self, create_children: @create_children) end class NextHop < ConfigClass def has_multiple_values? false end def _section :'next-hop' end class Self < ConfigClass def has_multiple_values? false end def _section :'self' end @props={} end # class Self def self @subclasses['self'] ||= Self.new(parent_instance: self, create_children: @create_children) end class SelfForce < ConfigClass def has_multiple_values? false end def _section :'self-force' end @props={} end # class SelfForce def self_force @subclasses['self-force'] ||= SelfForce.new(parent_instance: self, create_children: @create_children) end @props={} end # class NextHop def next_hop @subclasses['next-hop'] ||= NextHop.new(parent_instance: self, create_children: @create_children) end class RemovePrivateAS < ConfigClass def has_multiple_values? false end def _section :'remove-private-AS' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class ReplaceAS < ConfigClass def has_multiple_values? false end def _section :'replace-AS' end @props={} end # class ReplaceAS def replace_AS @subclasses['replace-AS'] ||= ReplaceAS.new(parent_instance: self, create_children: @create_children) end @props={} end # class RemovePrivateAS def remove_private_AS @subclasses['remove-private-AS'] ||= RemovePrivateAS.new(parent_instance: self, create_children: @create_children) end class SendCommunity < ConfigClass def has_multiple_values? false end def _section :'send-community' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end class Both < ConfigClass def has_multiple_values? false end def _section :'both' end @props={} end # class Both def both @subclasses['both'] ||= Both.new(parent_instance: self, create_children: @create_children) end class Extended < ConfigClass def has_multiple_values? false end def _section :'extended' end @props={} end # class Extended def extended @subclasses['extended'] ||= Extended.new(parent_instance: self, create_children: @create_children) end class Large < ConfigClass def has_multiple_values? false end def _section :'large' end @props={} end # class Large def large @subclasses['large'] ||= Large.new(parent_instance: self, create_children: @create_children) end class Standard < ConfigClass def has_multiple_values? false end def _section :'standard' end @props={} end # class Standard def standard @subclasses['standard'] ||= Standard.new(parent_instance: self, create_children: @create_children) end @props={} end # class SendCommunity def send_community @subclasses['send-community'] ||= SendCommunity.new(parent_instance: self, create_children: @create_children) end @props={"as-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Override ASNs in outbound updates if AS-Path equals Remote-AS"}, "default-originate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Originate Default Route"}, "route-reflector-client"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Route Reflector Client"}} # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override prop_get('as-override') end # Override ASNs in outbound updates if AS-Path equals Remote-AS def as_override=(val) prop_set('as-override', val) end # Originate Default Route def default_originate prop_get('default-originate') end # Originate Default Route def default_originate=(val) prop_set('default-originate', val) end # Route Reflector Client def route_reflector_client prop_get('route-reflector-client') end # Route Reflector Client def route_reflector_client=(val) prop_set('route-reflector-client', val) end end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"Address Family Profile Name"}} # Address Family Profile Name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressFamilyProfile def address_family_profile if @create_children @subclasses['address-family-profile'] ||= AddressFamilyProfile.new(parent_instance: self, create_children: @create_children) else AddressFamilyProfile.new(parent_instance: self) end end class RedistributionProfile < XML::ConfigClass def has_multiple_values? true end def _section :'redistribution-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ipv4 < ConfigClass def has_multiple_values? false end def _section :'ipv4' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class Connected < ConfigClass def has_multiple_values? false end def _section :'connected' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Connected def connected @subclasses['connected'] ||= Connected.new(parent_instance: self, create_children: @create_children) end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv4 def ipv4 @subclasses['ipv4'] ||= Ipv4.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Unicast < ConfigClass def has_multiple_values? false end def _section :'unicast' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class Connected < ConfigClass def has_multiple_values? false end def _section :'connected' end @props={"enable"=>{"node-type"=>"element", "type"=>"bool", "default"=>"yes"}, "metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Metric"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # Metric def metric prop_get('metric') end # Metric def metric=(val) prop_set('metric', val) end end # class Connected def connected @subclasses['connected'] ||= Connected.new(parent_instance: self, create_children: @create_children) end @props={} end # class Unicast def unicast @subclasses['unicast'] ||= Unicast.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"Redistribution Profile Name"}} # Redistribution Profile Name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistributionProfile def redistribution_profile if @create_children @subclasses['redistribution-profile'] ||= RedistributionProfile.new(parent_instance: self, create_children: @create_children) else RedistributionProfile.new(parent_instance: self) end end @props={} end # class Bgp def bgp @subclasses['bgp'] ||= Bgp.new(parent_instance: self, create_children: @create_children) end @props={} end # class RoutingProfile def routing_profile @subclasses['routing-profile'] ||= RoutingProfile.new(parent_instance: self, create_children: @create_children) end class DnsProxy < XML::ConfigClass def has_multiple_values? true end def _section :'dns-proxy' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(dhcp-client) and not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(dhcp-client) and not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "string('loopback')"]}} # Interface name def member prop_get('member') end # Interface name def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "name(../../../../../interface/vlan[dhcp-client])", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end @props={"primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "enum"=>[{"value"=>"inherited"}]}}} # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class DomainServers < XML::ConfigClass def has_multiple_values? true end def _section :'domain-servers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DomainName < XML::ConfigClass def has_multiple_values? true end def _section :'domain-name' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\*\\-]+$", "maxlen"=>"128", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def member prop_get('member') end # Dotted domain name with optional wildcards def member=(val) prop_set('member', val) end end # class DomainName def domain_name if @create_children @subclasses['domain-name'] ||= DomainName.new(parent_instance: self, create_children: @create_children) else DomainName.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "cacheable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching of domains resolved by this mapping"}, "primary"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Primary DNS Name server IP address"}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Secondary DNS Name server IP address"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Turn on caching of domains resolved by this mapping def cacheable prop_get('cacheable') end # Turn on caching of domains resolved by this mapping def cacheable=(val) prop_set('cacheable', val) end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DomainServers def domain_servers if @create_children @subclasses['domain-servers'] ||= DomainServers.new(parent_instance: self, create_children: @create_children) else DomainServers.new(parent_instance: self) end end class Cache < ConfigClass def has_multiple_values? false end def _section :'cache' end class MaxTtl < ConfigClass def has_multiple_values? false end def _section :'max-ttl' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable max ttl for this DNS object"}, "time-to-live"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"86400", "help-string"=>"Time in seconds after which entry is cleared"}} # Enable max ttl for this DNS object def enabled prop_get('enabled') end # Enable max ttl for this DNS object def enabled=(val) prop_set('enabled', val) end # Time in seconds after which entry is cleared def time_to_live prop_get('time-to-live') end # Time in seconds after which entry is cleared def time_to_live=(val) prop_set('time-to-live', val) end end # class MaxTtl def max_ttl @subclasses['max-ttl'] ||= MaxTtl.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching for this DNS object"}, "cache-edns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Cache EDNS UDP response"}} # Turn on caching for this DNS object def enabled prop_get('enabled') end # Turn on caching for this DNS object def enabled=(val) prop_set('enabled', val) end # Cache EDNS UDP response def cache_edns prop_get('cache-edns') end # Cache EDNS UDP response def cache_edns=(val) prop_set('cache-edns', val) end end # class Cache def cache @subclasses['cache'] ||= Cache.new(parent_instance: self, create_children: @create_children) end class StaticEntries < XML::ConfigClass def has_multiple_values? true end def _section :'static-entries' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Resolved IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Resolved IP address def member prop_get('member') end # Resolved IP address def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "domain"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"Fully qualified domain name for specified IP address"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Fully qualified domain name for specified IP address def domain prop_get('domain') end # Fully qualified domain name for specified IP address def domain=(val) prop_set('domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticEntries def static_entries if @create_children @subclasses['static-entries'] ||= StaticEntries.new(parent_instance: self, create_children: @create_children) else StaticEntries.new(parent_instance: self) end end class TcpQueries < ConfigClass def has_multiple_values? false end def _section :'tcp-queries' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Turn on forwarding of TCP DNS queries"}, "max-pending-requests"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"64", "max"=>"256", "default"=>"64", "help-string"=>"Upper limit on number of concurrent TCP DNS requests"}} # Turn on forwarding of TCP DNS queries def enabled prop_get('enabled') end # Turn on forwarding of TCP DNS queries def enabled=(val) prop_set('enabled', val) end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests prop_get('max-pending-requests') end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests=(val) prop_set('max-pending-requests', val) end end # class TcpQueries def tcp_queries @subclasses['tcp-queries'] ||= TcpQueries.new(parent_instance: self, create_children: @create_children) end class UdpQueries < ConfigClass def has_multiple_values? false end def _section :'udp-queries' end class Retries < ConfigClass def has_multiple_values? false end def _section :'retries' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"2", "help-string"=>"Time in seconds for another request to be sent"}, "attempts"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"5", "help-string"=>"Maximum number of retries before trying next name server"}} # Time in seconds for another request to be sent def interval prop_get('interval') end # Time in seconds for another request to be sent def interval=(val) prop_set('interval', val) end # Maximum number of retries before trying next name server def attempts prop_get('attempts') end # Maximum number of retries before trying next name server def attempts=(val) prop_set('attempts', val) end end # class Retries def retries @subclasses['retries'] ||= Retries.new(parent_instance: self, create_children: @create_children) end @props={} end # class UdpQueries def udp_queries @subclasses['udp-queries'] ||= UdpQueries.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable or disable processing of DNS requests on interface(s) on this object"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled prop_get('enabled') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DnsProxy def dns_proxy if @create_children @subclasses['dns-proxy'] ||= DnsProxy.new(parent_instance: self, create_children: @create_children) else DnsProxy.new(parent_instance: self) end end class Dhcp < ConfigClass def has_multiple_values? false end def _section :'dhcp' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < ConfigClass def has_multiple_values? false end def _section :'server' end class Option < ConfigClass def has_multiple_values? false end def _section :'option' end class Lease < XML::ConfigClass def has_multiple_values? true end def _section :'lease' end class Unlimited < ConfigClass def has_multiple_values? false end def _section :'unlimited' end @props={} end # class Unlimited def unlimited @subclasses['unlimited'] ||= Unlimited.new(parent_instance: self, create_children: @create_children) end @props={"timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"1000000", "default"=>"1440", "help-string"=>"lease(minute)"}} # lease(minute) def timeout prop_get('timeout') end # lease(minute) def timeout=(val) prop_set('timeout', val) end end # class Lease def lease if @create_children @subclasses['lease'] ||= Lease.new(parent_instance: self, create_children: @create_children) else Lease.new(parent_instance: self) end end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "name(../../../../../interface/vlan[dhcp-client])", "#network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Dns < ConfigClass def has_multiple_values? false end def _section :'dns' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"DNS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"DNS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # DNS primary server ip address def primary prop_get('primary') end # DNS primary server ip address def primary=(val) prop_set('primary', val) end # DNS secondary server ip address def secondary prop_get('secondary') end # DNS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Dns def dns @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) end class Wins < ConfigClass def has_multiple_values? false end def _section :'wins' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"WINS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"WINS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # WINS primary server ip address def primary prop_get('primary') end # WINS primary server ip address def primary=(val) prop_set('primary', val) end # WINS secondary server ip address def secondary prop_get('secondary') end # WINS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Wins def wins @subclasses['wins'] ||= Wins.new(parent_instance: self, create_children: @create_children) end class Nis < ConfigClass def has_multiple_values? false end def _section :'nis' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NIS primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NIS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NIS secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NIS server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # NIS primary server ip address def primary prop_get('primary') end # NIS primary server ip address def primary=(val) prop_set('primary', val) end # NIS secondary server ip address def secondary prop_get('secondary') end # NIS secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Nis def nis @subclasses['nis'] ||= Nis.new(parent_instance: self, create_children: @create_children) end class Ntp < ConfigClass def has_multiple_values? false end def _section :'ntp' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NTP primary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NTP server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"NTP secondary server ip address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"NTP server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # NTP primary server ip address def primary prop_get('primary') end # NTP primary server ip address def primary=(val) prop_set('primary', val) end # NTP secondary server ip address def secondary prop_get('secondary') end # NTP secondary server ip address def secondary=(val) prop_set('secondary', val) end end # class Ntp def ntp @subclasses['ntp'] ||= Ntp.new(parent_instance: self, create_children: @create_children) end class UserDefined < XML::ConfigClass def has_multiple_values? true end def _section :'user-defined' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < XML::ConfigClass def has_multiple_values? true end def _section :'ip' end @props={"member"=>{"node-type"=>"element", "type"=>"ipspec", "ipv4-only"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ip def ip if @create_children @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) else Ip.new(parent_instance: self) end end class Ascii < XML::ConfigClass def has_multiple_values? true end def _section :'ascii' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ascii def ascii if @create_children @subclasses['ascii'] ||= Ascii.new(parent_instance: self, create_children: @create_children) else Ascii.new(parent_instance: self) end end class Hex < XML::ConfigClass def has_multiple_values? true end def _section :'hex' end @props={"member"=> {"node-type"=>"element", "minlen"=>"1", "maxlen"=>"510", "type"=>"string", "regex"=>"^[0-9a-fA-F]+$"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hex def hex if @create_children @subclasses['hex'] ||= Hex.new(parent_instance: self, create_children: @create_children) else Hex.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "regex"=>"^([ a-zA-Z0-9_.-])+$", "help-string"=>"option name"}, "code"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"254", "help-string"=>"option code"}, "vendor-class-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^([ a-zA-Z0-9./_=:;?@-])+$"}, "inherited"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Inherited from DHCP server inheritance source"}} # option name def name prop_get('@name') end # option code def code prop_get('code') end # option code def code=(val) prop_set('code', val) end def vendor_class_identifier prop_get('vendor-class-identifier') end def vendor_class_identifier=(val) prop_set('vendor-class-identifier', val) end # Inherited from DHCP server inheritance source def inherited prop_get('inherited') end # Inherited from DHCP server inheritance source def inherited=(val) prop_set('inherited', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UserDefined def user_defined if @create_children @subclasses['user-defined'] ||= UserDefined.new(parent_instance: self, create_children: @create_children) else UserDefined.new(parent_instance: self) end end @props={"gateway"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"default gateway", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "ipv4-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "subnet-mask"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"var-ip-address", "loose-membership"=>"yes", "unicast-only"=>"yes", "optional"=>"yes", "help-string"=>"ip pool subnet mask", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "pop3-server"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"POP3 server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"POP3 server ip address"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "smtp-server"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"SMTP server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=> {"unicast-only"=>"yes", "ipv4-only"=>"yes", "help-string"=>"SMTP server ip address"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "dns-suffix"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "help-string"=>"domain name", "multi-types"=> {"string"=>{"maxlen"=>"63", "help-string"=>"SMTP server ip address"}, "enum"=>[{"value"=>"inherited"}]}}} # default gateway def gateway prop_get('gateway') end # default gateway def gateway=(val) prop_set('gateway', val) end # ip pool subnet mask def subnet_mask prop_get('subnet-mask') end # ip pool subnet mask def subnet_mask=(val) prop_set('subnet-mask', val) end # POP3 server def pop3_server prop_get('pop3-server') end # POP3 server def pop3_server=(val) prop_set('pop3-server', val) end # SMTP server def smtp_server prop_get('smtp-server') end # SMTP server def smtp_server=(val) prop_set('smtp-server', val) end # domain name def dns_suffix prop_get('dns-suffix') end # domain name def dns_suffix=(val) prop_set('dns-suffix', val) end end # class Option def option @subclasses['option'] ||= Option.new(parent_instance: self, create_children: @create_children) end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class Reserved < XML::ConfigClass def has_multiple_values? true end def _section :'reserved' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "ipv4-only"=>"yes", "unicast-only"=>"yes", "help-string"=>"ip"}, "mac"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"mac-address", "help-string"=>"MAC address (format xx:xx:xx:xx:xx:xx)"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Description of reserved entry, e.g. host name", "maxlen"=>"255"}} # ip def name prop_get('@name') end # MAC address (format xx:xx:xx:xx:xx:xx) def mac prop_get('mac') end # MAC address (format xx:xx:xx:xx:xx:xx) def mac=(val) prop_set('mac', val) end # Description of reserved entry, e.g. host name def description prop_get('description') end # Description of reserved entry, e.g. host name def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Reserved def reserved if @create_children @subclasses['reserved'] ||= Reserved.new(parent_instance: self, create_children: @create_children) else Reserved.new(parent_instance: self) end end @props={"mode"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"enabled", "help-string"=>"Enable dhcp server"}, {"value"=>"disabled", "help-string"=>"Disable dhcp server"}, {"value"=>"auto", "help-string"=> "Auto probe to avoid conflict with existing DHCP server"}]}, "probe-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Ping IP when allocating a new IP"}} def mode prop_get('mode') end def mode=(val) prop_set('mode', val) end # Ping IP when allocating a new IP def probe_ip prop_get('probe-ip') end # Ping IP when allocating a new IP def probe_ip=(val) prop_set('probe-ip', val) end end # class Server def server @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) end class Relay < ConfigClass def has_multiple_values? false end def _section :'relay' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"relay server ip", "max-count"=>"8", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # relay server ip def member prop_get('member') end # relay server ip def member=(val) prop_set('member', val) end end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class Ipv6 < ConfigClass def has_multiple_values? false end def _section :'ipv6' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"ipspec", "ipv6-only"=>"yes", "help-string"=>"relay server address"}, "interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Specify outgoing interface when using an IPv6 multicast address for your DHCPv6 server", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[ipv6/enabled='yes']/@name|#myentry(devices)/network/interface/ethernet/entry[layer3/ipv6/enabled='yes']/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[ipv6/enabled='yes']/@name|#network/interface/aggregate-ethernet/entry[layer3/ipv6/enabled='yes']/@name", "#network/interface/vlan/units/entry[ipv6/enabled='yes']/@name", "name(../../../../../../../../../interface/vlan[ipv6/enabled='yes'])"]}} # relay server address def name prop_get('@name') end # Specify outgoing interface when using an IPv6 multicast address for your DHCPv6 server def interface prop_get('interface') end # Specify outgoing interface when using an IPv6 multicast address for your DHCPv6 server def interface=(val) prop_set('interface', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Ipv6 def ipv6 @subclasses['ipv6'] ||= Ipv6.new(parent_instance: self, create_children: @create_children) end @props={} end # class Relay def relay @subclasses['relay'] ||= Relay.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "regex"=>"^([ 0-9a-zA-Z./_-])+$", "help-string"=>"interface for dhcp", "autocomplete"=>"yes", "memberof"=> ["#network/interface/ethernet/entry/layer3/units/entry[not(dhcp-client) and not(../../untagged-sub-interface='yes') and not(decrypt-forward = 'yes')]/@name|#network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/aggregate-ethernet/entry/layer3/units/entry[not(dhcp-client) and not(../../untagged-sub-interface='yes') and not (decrypt-forward = 'yes')]/@name|#network/interface/aggregate-ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#network/interface/vlan/units/entry[not(dhcp-client)]/@name", "name(../../../interface/vlan[not(dhcp-client)])", "name(../../../interface/vlan[not(dhcp-client)])"]}} # interface for dhcp def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class Dhcp def dhcp @subclasses['dhcp'] ||= Dhcp.new(parent_instance: self, create_children: @create_children) end class SharedGateway < XML::ConfigClass def has_multiple_values? true end def _section :'shared-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Import < ConfigClass def has_multiple_values? false end def _section :'import' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "affects"=>"../../../../../zone", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end @props={"dns-proxy"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Dns proxy object to use for resolving fqdns", "autocomplete"=>"yes", "memberof"=>["#myentry(devices)/network/dns-proxy/entry/@name"]}} # Dns proxy object to use for resolving fqdns def dns_proxy prop_get('dns-proxy') end # Dns proxy object to use for resolving fqdns def dns_proxy=(val) prop_set('dns-proxy', val) end end # class Import def import @subclasses['import'] ||= Import.new(parent_instance: self, create_children: @create_children) end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Layer3 < XML::ConfigClass def has_multiple_values? true end def _section :'layer3' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Layer3 def layer3 if @create_children @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) else Layer3.new(parent_instance: self) end end class External < XML::ConfigClass def has_multiple_values? true end def _section :'external' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"vsys name", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/vsys/entry/@name", "#myentry(devices)/network/shared-gateway/entry[@name!='$mysgname']/@name", "#myentry(devices)/network/shared-gateway/entry[@name!='$mysgname']/@name"]}} # vsys name def member prop_get('member') end # vsys name def member=(val) prop_set('member', val) end end # class External def external if @create_children @subclasses['external'] ||= External.new(parent_instance: self, create_children: @create_children) else External.new(parent_instance: self) end end @props={"zone-protection-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Zone protection profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/profiles/zone-protection-profile/entry/@name"]}, "enable-packet-buffer-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding scan logs", "autocomplete"=>"yes", "memberof"=>["##/shared/log-settings/profiles/entry/@name"]}} # Zone protection profile def zone_protection_profile prop_get('zone-protection-profile') end # Zone protection profile def zone_protection_profile=(val) prop_set('zone-protection-profile', val) end def enable_packet_buffer_protection prop_get('enable-packet-buffer-protection') end def enable_packet_buffer_protection=(val) prop_set('enable-packet-buffer-protection', val) end # Log setting for forwarding scan logs def log_setting prop_get('log-setting') end # Log setting for forwarding scan logs def log_setting=(val) prop_set('log-setting', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class UserAcl < ConfigClass def has_multiple_values? false end def _section :'user-acl' end class IncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeList def include_list if @create_children @subclasses['include-list'] ||= IncludeList.new(parent_instance: self, create_children: @create_children) else IncludeList.new(parent_instance: self) end end class ExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeList def exclude_list if @create_children @subclasses['exclude-list'] ||= ExcludeList.new(parent_instance: self, create_children: @create_children) else ExcludeList.new(parent_instance: self) end end @props={} end # class UserAcl def user_acl @subclasses['user-acl'] ||= UserAcl.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"15", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "dos-profile"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "help-string"=>"Denial-of-Service profile", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/dos/entry/@name", "#config/shared/profiles/dos/entry/@name"]}, "dos-log-setting"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding DoS logs", "autocomplete"=>"yes", "memberof"=>["#config/shared/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Denial-of-Service profile def dos_profile prop_get('dos-profile') end # Denial-of-Service profile def dos_profile=(val) prop_set('dos-profile', val) end # Log setting for forwarding DoS logs def dos_log_setting prop_get('dos-log-setting') end # Log setting for forwarding DoS logs def dos_log_setting=(val) prop_set('dos-log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "ip-netmask"=>{"node-type"=>"element", "type"=>"ipspec"}, "ip-range"=>{"node-type"=>"element", "type"=>"iprangespec"}, "ip-wildcard"=>{"node-type"=>"element", "type"=>"ipdiscontmask"}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^[a-zA-Z0-9_]([a-zA-Z0-9._-])+[a-zA-Z0-9]$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def ip_netmask prop_get('ip-netmask') end def ip_netmask=(val) prop_set('ip-netmask', val) end def ip_range prop_get('ip-range') end def ip_range=(val) prop_set('ip-range', val) end def ip_wildcard prop_get('ip-wildcard') end def ip_wildcard=(val) prop_set('ip-wildcard', val) end def fqdn prop_get('fqdn') end def fqdn=(val) prop_set('fqdn', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end class AddressGroup < XML::ConfigClass def has_multiple_values? true end def _section :'address-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Static < XML::ConfigClass def has_multiple_values? true end def _section :'static' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Static def static if @create_children @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) else Static.new(parent_instance: self) end end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"filter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2047", "help-string"=>"tag-based filter"}} # tag-based filter def filter prop_get('filter') end # tag-based filter def filter=(val) prop_set('filter', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AddressGroup def address_group if @create_children @subclasses['address-group'] ||= AddressGroup.new(parent_instance: self, create_children: @create_children) else AddressGroup.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class Tcp < ConfigClass def has_multiple_values? false end def _section :'tcp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"tcp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "halfclose-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session half-close timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800"}, "timewait-timeout"=> {"node-type"=>"element", "help-string"=>"tcp session time-wait timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"600"}} # tcp session timeout value (in second) def timeout prop_get('timeout') end # tcp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end # tcp session half-close timeout value (in second) def halfclose_timeout prop_get('halfclose-timeout') end # tcp session half-close timeout value (in second) def halfclose_timeout=(val) prop_set('halfclose-timeout', val) end # tcp session time-wait timeout value (in second) def timewait_timeout prop_get('timewait-timeout') end # tcp session time-wait timeout value (in second) def timewait_timeout=(val) prop_set('timewait-timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Tcp def tcp @subclasses['tcp'] ||= Tcp.new(parent_instance: self, create_children: @create_children) end class Udp < ConfigClass def has_multiple_values? false end def _section :'udp' end class Override < XML::ConfigClass def has_multiple_values? true end def _section :'override' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={"timeout"=> {"node-type"=>"element", "help-string"=>"udp session timeout value (in second)", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "default"=>"30"}} # udp session timeout value (in second) def timeout prop_get('timeout') end # udp session timeout value (in second) def timeout=(val) prop_set('timeout', val) end end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class Override def override if @create_children @subclasses['override'] ||= Override.new(parent_instance: self, create_children: @create_children) else Override.new(parent_instance: self) end end @props={"port"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023"}, "source-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def port prop_get('port') end def port=(val) prop_set('port', val) end def source_port prop_get('source-port') end def source_port=(val) prop_set('source-port', val) end end # class Udp def udp @subclasses['udp'] ||= Udp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class ServiceGroup < XML::ConfigClass def has_multiple_values? true end def _section :'service-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServiceGroup def service_group if @create_children @subclasses['service-group'] ||= ServiceGroup.new(parent_instance: self, create_children: @create_children) else ServiceGroup.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "color"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"color1"}, {"value"=>"color2"}, {"value"=>"color3"}, {"value"=>"color4"}, {"value"=>"color5"}, {"value"=>"color6"}, {"value"=>"color7"}, {"value"=>"color8"}, {"value"=>"color9"}, {"value"=>"color10"}, {"value"=>"color11"}, {"value"=>"color12"}, {"value"=>"color13"}, {"value"=>"color14"}, {"value"=>"color15"}, {"value"=>"color16"}, {"value"=>"color17"}, {"value"=>"color19"}, {"value"=>"color20"}, {"value"=>"color21"}, {"value"=>"color22"}, {"value"=>"color23"}, {"value"=>"color24"}, {"value"=>"color25"}, {"value"=>"color26"}, {"value"=>"color27"}, {"value"=>"color28"}, {"value"=>"color29"}, {"value"=>"color30"}, {"value"=>"color31"}, {"value"=>"color32"}, {"value"=>"color33"}, {"value"=>"color34"}, {"value"=>"color35"}, {"value"=>"color36"}, {"value"=>"color37"}, {"value"=>"color38"}, {"value"=>"color39"}, {"value"=>"color40"}, {"value"=>"color41"}, {"value"=>"color42"}]}, "comments"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}} def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def color prop_get('color') end def color=(val) prop_set('color', val) end def comments prop_get('comments') end def comments=(val) prop_set('comments', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/snmptrap/entry[version]/@name", "#myentry(shared-gateway)/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/email/entry[server]/@name", "#myentry(shared-gateway)/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/syslog/entry[server]/@name", "#myentry(shared-gateway)/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#myentry(shared-gateway)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/log-settings/http/entry[tag-registration='yes']/@name", "#myentry(shared-gateway)/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SMTP gateway to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$|^\\$([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SYSLOG server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(shared-gateway)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class Rulebase < ConfigClass def has_multiple_values? false end def _section :'rulebase' end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name", "#myentry(shared-gateway)/zone/entry[network/virtual-wire]/@name", "#myentry(shared-gateway)/zone/entry[network/external]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "max-count"=>"1", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name", "#myentry(shared-gateway)/zone/entry[network/virtual-wire]/@name", "#myentry(shared-gateway)/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31", "disallow-keyword-any"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/imsi]/@name", "#myentry(shared-gateway)/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class SourceTranslation < ConfigClass def has_multiple_values? false end def _section :'source-translation' end class DynamicIpAndPort < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip-and-port' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(fqdn) and not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/ip", "#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.nat.rules.interface-address.floating-ip-disable=True", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip-and-port/interface-address/floating-ip", "#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIpAndPort def dynamic_ip_and_port @subclasses['dynamic-ip-and-port'] ||= DynamicIpAndPort.new(parent_instance: self, create_children: @create_children) end class DynamicIp < ConfigClass def has_multiple_values? false end def _section :'dynamic-ip' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class Fallback < ConfigClass def has_multiple_values? false end def _section :'fallback' end class TranslatedAddress < XML::ConfigClass def has_multiple_values? true end def _section :'translated-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class TranslatedAddress def translated_address if @create_children @subclasses['translated-address'] ||= TranslatedAddress.new(parent_instance: self, create_children: @create_children) else TranslatedAddress.new(parent_instance: self) end end class InterfaceAddress < ConfigClass def has_multiple_values? false end def _section :'interface-address' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=>"Interface name", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}, "ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=> "specify exact IP address if interface has multiple addresses", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/ip", "#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname[name()='vlan' or name()='tunnel' or name()='loopback']/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name"]}, "floating-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IP address in HA Active-Active configuration", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#dg-hier/post-rulebase/nat/rules/entry/source-translation/dynamic-ip/fallback/interface-address/floating-ip", "#myentry(devices)/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}} # Interface name def interface prop_get('interface') end # Interface name def interface=(val) prop_set('interface', val) end # specify exact IP address if interface has multiple addresses def ip prop_get('ip') end # specify exact IP address if interface has multiple addresses def ip=(val) prop_set('ip', val) end # Floating IP address in HA Active-Active configuration def floating_ip prop_get('floating-ip') end # Floating IP address in HA Active-Active configuration def floating_ip=(val) prop_set('floating-ip', val) end end # class InterfaceAddress def interface_address @subclasses['interface-address'] ||= InterfaceAddress.new(parent_instance: self, create_children: @create_children) end @props={} end # class Fallback def fallback @subclasses['fallback'] ||= Fallback.new(parent_instance: self, create_children: @create_children) end @props={} end # class DynamicIp def dynamic_ip @subclasses['dynamic-ip'] ||= DynamicIp.new(parent_instance: self, create_children: @create_children) end class StaticIp < ConfigClass def has_multiple_values? false end def _section :'static-ip' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "bi-directional"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"no", "help-string"=> "allow reverse translation from translated address to original address", "enum"=> [{"value"=>"yes", "help-string"=>"Bi-directional rule"}, {"value"=>"no", "help-string"=>"Uni-directional rule"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end # allow reverse translation from translated address to original address def bi_directional prop_get('bi-directional') end # allow reverse translation from translated address to original address def bi_directional=(val) prop_set('bi-directional', val) end end # class StaticIp def static_ip @subclasses['static-ip'] ||= StaticIp.new(parent_instance: self, create_children: @create_children) end @props={} end # class SourceTranslation def source_translation @subclasses['source-translation'] ||= SourceTranslation.new(parent_instance: self, create_children: @create_children) end class DestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'destination-translation' end class DnsRewrite < ConfigClass def has_multiple_values? false end def _section :'dns-rewrite' end @props={"direction"=> {"node-type"=>"element", "type"=>"enum", "default"=>"reverse", "help-string"=>"Select direction to apply DNS rewrite", "enum"=> [{"value"=>"reverse", "help-string"=>"Reverse translation"}, {"value"=>"forward", "help-string"=>"Forward translation"}]}} # Select direction to apply DNS rewrite def direction prop_get('direction') end # Select direction to apply DNS rewrite def direction=(val) prop_set('direction', val) end end # class DnsRewrite def dns_rewrite @subclasses['dns-rewrite'] ||= DnsRewrite.new(parent_instance: self, create_children: @create_children) end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(fqdn)]/@name", "#myentry(shared-gateway)/address/entry[not(fqdn)]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end end # class DestinationTranslation def destination_translation @subclasses['destination-translation'] ||= DestinationTranslation.new(parent_instance: self, create_children: @create_children) end class DynamicDestinationTranslation < ConfigClass def has_multiple_values? false end def _section :'dynamic-destination-translation' end @props={"translated-address"=> {"node-type"=>"element", "type"=>"multiple", "no-default"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{}, "iprangespec"=>{}}}, "translated-port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "no-default"=>"yes", "optional"=>"yes"}, "distribution"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"round-robin", "help-string"=>"Distribution algorithm for destination address pool", "enum"=> [{"value"=>"round-robin", "help-string"=>"Round Robin"}, {"value"=>"source-ip-hash", "help-string"=>"Source IP Hash"}, {"value"=>"ip-modulo", "help-string"=>"IP Modulo"}, {"value"=>"ip-hash", "help-string"=>"IP Hash"}, {"value"=>"least-sessions", "help-string"=>"Least Sessions"}]}} def translated_address prop_get('translated-address') end def translated_address=(val) prop_set('translated-address', val) end def translated_port prop_get('translated-port') end def translated_port=(val) prop_set('translated-port', val) end # Distribution algorithm for destination address pool def distribution prop_get('distribution') end # Distribution algorithm for destination address pool def distribution=(val) prop_set('distribution', val) end end # class DynamicDestinationTranslation def dynamic_destination_translation @subclasses['dynamic-destination-translation'] ||= DynamicDestinationTranslation.new(parent_instance: self, create_children: @create_children) end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "service"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "#config/shared/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name", "string('any')"]}, "nat-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"ipv4", "help-string"=>"type of nat", "enum"=> [{"value"=>"ipv4", "help-string"=>"ipv4 nat"}, {"value"=>"nat64", "help-string"=>"translator between ipv6 and ipv4"}, {"value"=>"nptv6", "help-string"=>"network prefix translator for ipv6"}]}, "to-interface"=> {"node-type"=>"element", "optional"=>"yes", "default"=>"any", "type"=>"multiple", "help-string"=>"Egress interface from route lookup", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/to-interface", "#dg-hier/post-rulebase/*/rules/entry/to-interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"], "multi-types"=> {"string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any interface"}]}}, "active-active-device-binding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"primary", "help-string"=>"Rule is bound to Active-Primary device"}, {"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def service prop_get('service') end def service=(val) prop_set('service', val) end # type of nat def nat_type prop_get('nat-type') end # type of nat def nat_type=(val) prop_set('nat-type', val) end # Egress interface from route lookup def to_interface prop_get('to-interface') end # Egress interface from route lookup def to_interface=(val) prop_set('to-interface', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class Pbf < ConfigClass def has_multiple_values? false end def _section :'pbf' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < ConfigClass def has_multiple_values? false end def _section :'from' end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/zone/member", "##/shared/pre-rulebase/*/rules/entry/to/zone/member", "##/shared/post-rulebase/*/rules/entry/from/zone/member", "##/shared/post-rulebase/*/rules/entry/to/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/from/zone/member", "#dg-hier/pre-rulebase/*/rules/entry/to/zone/member", "#dg-hier/post-rulebase/*/rules/entry/from/zone/member", "#dg-hier/post-rulebase/*/rules/entry/to/zone/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name", "#myentry(shared-gateway)/zone/entry[network/external]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"31"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/*/rules/entry/from/interface/member", "#dg-hier/post-rulebase/*/rules/entry/from/interface/member", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end @props={} end # class From def from @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/imsi]/@name", "#myentry(shared-gateway)/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/local-user-database/user/entry/@name", "#myentry(shared-gateway)/local-user-database/user-group/entry/@name", "#myentry(shared-gateway)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry[not(cachable='no')]/@name", "#config/shared/content-preview/application/entry[not(cachable='no')]/@name", "#dg-hier/pre-rulebase/application-override/rules/entry/application", "#dg-hier/post-rulebase/application-override/rules/entry/application"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end class Forward < ConfigClass def has_multiple_values? false end def _section :'forward' end class Nexthop < ConfigClass def has_multiple_values? false end def _section :'nexthop' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "help-string"=>"Next hop IP address", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(shared-gateway)/address/entry[(contains(ip-netmask, ':') and (contains(ip-netmask, '/128') or not(contains(ip-netmask, '/')))) or (ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/'))))]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "ipspec"=>{"unicast-only"=>"yes"}}}, "fqdn"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"nexthop address FQDN name configuration", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name", "#myentry(shared-gateway)/address/entry[fqdn]/@name"]}} # Next hop IP address def ip_address prop_get('ip-address') end # Next hop IP address def ip_address=(val) prop_set('ip-address', val) end # nexthop address FQDN name configuration def fqdn prop_get('fqdn') end # nexthop address FQDN name configuration def fqdn=(val) prop_set('fqdn', val) end end # class Nexthop def nexthop @subclasses['nexthop'] ||= Nexthop.new(parent_instance: self, create_children: @create_children) end class Monitor < ConfigClass def has_multiple_values? false end def _section :'monitor' end @props={"profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Monitoring profile associated with this rule", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/monitor/profile", "#myentry(devices)/network/profiles/monitor-profile/entry/@name"]}, "disable-if-unreachable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable this rule if nexthop/monitor ip is unreachable"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Monitor IP address"}} # Monitoring profile associated with this rule def profile prop_get('profile') end # Monitoring profile associated with this rule def profile=(val) prop_set('profile', val) end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable prop_get('disable-if-unreachable') end # Disable this rule if nexthop/monitor ip is unreachable def disable_if_unreachable=(val) prop_set('disable-if-unreachable', val) end # Monitor IP address def ip_address prop_get('ip-address') end # Monitor IP address def ip_address=(val) prop_set('ip-address', val) end end # class Monitor def monitor @subclasses['monitor'] ||= Monitor.new(parent_instance: self, create_children: @create_children) end @props={"egress-interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward/egress-interface", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward/egress-interface", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry[not(decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3 and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} # Interface to route packet to def egress_interface prop_get('egress-interface') end # Interface to route packet to def egress_interface=(val) prop_set('egress-interface', val) end end # class Forward def forward @subclasses['forward'] ||= Forward.new(parent_instance: self, create_children: @create_children) end class Discard < ConfigClass def has_multiple_values? false end def _section :'discard' end @props={} end # class Discard def discard @subclasses['discard'] ||= Discard.new(parent_instance: self, create_children: @create_children) end class NoPbf < ConfigClass def has_multiple_values? false end def _section :'no-pbf' end @props={} end # class NoPbf def no_pbf @subclasses['no-pbf'] ||= NoPbf.new(parent_instance: self, create_children: @create_children) end @props={"forward-to-vsys"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Virtual system/Shared gateway to route packet to", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#dg-hier/pre-rulebase/pbf/rules/entry/action/forward-to-vsys", "#dg-hier/post-rulebase/pbf/rules/entry/action/forward-to-vsys", "#myentry(devices)/vsys/entry/@name", "#myentry(devices)/network/shared-gateway/entry/@name"]}} # Virtual system/Shared gateway to route packet to def forward_to_vsys prop_get('forward-to-vsys') end # Virtual system/Shared gateway to route packet to def forward_to_vsys=(val) prop_set('forward-to-vsys', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end class EnforceSymmetricReturn < ConfigClass def has_multiple_values? false end def _section :'enforce-symmetric-return' end class NexthopAddressList < XML::ConfigClass def has_multiple_values? true end def _section :'nexthop-address-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address"}} # IP address def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NexthopAddressList def nexthop_address_list if @create_children @subclasses['nexthop-address-list'] ||= NexthopAddressList.new(parent_instance: self, create_children: @create_children) else NexthopAddressList.new(parent_instance: self) end end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable symmetric return"}} # Enable symmetric return def enabled prop_get('enabled') end # Enable symmetric return def enabled=(val) prop_set('enabled', val) end end # class EnforceSymmetricReturn def enforce_symmetric_return @subclasses['enforce-symmetric-return'] ||= EnforceSymmetricReturn.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "schedule"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/schedule/entry/@name", "#myentry(shared-gateway)/schedule/entry/@name"]}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}, "active-active-device-binding"=> {"node-type"=>"element", "prune-on-sdb"=> "cfg.platform.vm.pbf.rules.active-active-device-binding-disable=True", "optional"=>"yes", "type"=>"enum", "help-string"=>"Device binding configuration in HA Active-Active mode", "enum"=> [{"value"=>"both", "help-string"=>"Rule is bound to both devices"}, {"value"=>"0", "help-string"=>"Rule is bound to device 0"}, {"value"=>"1", "help-string"=>"Rule is bound to device 1"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def schedule prop_get('schedule') end def schedule=(val) prop_set('schedule', val) end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # Device binding configuration in HA Active-Active mode def active_active_device_binding prop_get('active-active-device-binding') end # Device binding configuration in HA Active-Active mode def active_active_device_binding=(val) prop_set('active-active-device-binding', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Pbf def pbf @subclasses['pbf'] ||= Pbf.new(parent_instance: self, create_children: @create_children) end class Sdwan < ConfigClass def has_multiple_values? false end def _section :'sdwan' end class Rules < XML::ConfigClass def has_multiple_values? true end def _section :'rules' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Target < ConfigClass def has_multiple_values? false end def _section :'target' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry[@name='$device']/vsys/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>["#dg-child/devices/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "complete-handler"=>"dg-device-tags-completer", "autocomplete"=>"yes"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"negate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Target to all but these specified devices and tags"}} # Target to all but these specified devices and tags def negate prop_get('negate') end # Target to all but these specified devices and tags def negate=(val) prop_set('negate', val) end end # class Target def target @subclasses['target'] ||= Target.new(parent_instance: self, create_children: @create_children) end class From < XML::ConfigClass def has_multiple_values? true end def _section :'from' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class From def from if @create_children @subclasses['from'] ||= From.new(parent_instance: self, create_children: @create_children) else From.new(parent_instance: self) end end class To < XML::ConfigClass def has_multiple_values? true end def _section :'to' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../from/member", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/shared/pre-rulebase/*/rules/entry/from/member", "##/shared/pre-rulebase/*/rules/entry/to/member", "##/shared/post-rulebase/*/rules/entry/from/member", "##/shared/post-rulebase/*/rules/entry/to/member", "#dg-hier/pre-rulebase/*/rules/entry/from/member", "#dg-hier/pre-rulebase/*/rules/entry/to/member", "#dg-hier/post-rulebase/*/rules/entry/from/member", "#dg-hier/post-rulebase/*/rules/entry/to/member", "#myentry(shared-gateway)/zone/entry[network/layer3]/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31"}, "attr-opt"=> {"name"=>"previous-zone", "type"=>"string", "maxlen"=>"31", "help-string"=>"previous zone name"}, "enum"=>[{"value"=>"any", "help-string"=>"any zone"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class To def to if @create_children @subclasses['to'] ||= To.new(parent_instance: self, create_children: @create_children) else To.new(parent_instance: self) end end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#config/shared/external-list/entry[type/imsi]/@name", "#config/shared/external-list/entry[type/imei]/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/imsi]/@name", "#myentry(shared-gateway)/external-list/entry[type/imei]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(shared-gateway)/local-user-database/user/entry/@name", "#myentry(shared-gateway)/local-user-database/user-group/entry/@name", "#myentry(shared-gateway)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}, {"value"=>"known-user", "help-string"=>"any known user"}, {"value"=>"unknown", "help-string"=>"unknown user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Destination < XML::ConfigClass def has_multiple_values? true end def _section :'destination' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "completion-same-as"=>"../../source/member", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#config/shared/address/entry[not(ip-wildcard)]/@name", "#config/shared/address-group/entry/@name", "#config/shared/external-list/entry[type/ip]/@name", "#config/shared/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name", "#myentry(shared-gateway)/address/entry[not(ip-wildcard)]/@name", "#myentry(shared-gateway)/address-group/entry/@name", "#myentry(shared-gateway)/external-list/entry[type/ip]/@name", "#myentry(shared-gateway)/external-list/entry[type/predefined-ip]/@name", "##/predefined/ip-block-list-v2/entry/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63"}, "iprangespec"=>{}, "enum"=>[{"value"=>"any", "help-string"=>"any address"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Destination def destination if @create_children @subclasses['destination'] ||= Destination.new(parent_instance: self, create_children: @create_children) else Destination.new(parent_instance: self) end end class Application < XML::ConfigClass def has_multiple_values? true end def _section :'application' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/application/entry/@name", "##/predefined/application-group/entry/@name", "##/predefined/application-filter/entry/@name", "##/predefined/application-container/entry/@name", "#config/shared/application/entry/@name", "#config/shared/content-preview/application/entry/@name", "#config/shared/application-group/entry/@name", "#config/shared/application-filter/entry/@name", "#myentry(shared-gateway)/application/entry/@name", "#myentry(shared-gateway)/application-group/entry/@name", "#myentry(shared-gateway)/application-filter/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"any", "help-string"=>"any application"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Application def application if @create_children @subclasses['application'] ||= Application.new(parent_instance: self, create_children: @create_children) else Application.new(parent_instance: self) end end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/service/entry/@name", "##/predefined/service-group/entry/@name", "#config/shared/service/entry/@name", "#config/shared/service-group/entry/@name", "#myentry(shared-gateway)/service/entry/@name", "#myentry(shared-gateway)/service-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"63"}, "enum"=> [{"value"=>"application-default", "help-string"=>"default service for selected application"}, {"value"=>"any", "help-string"=>"any service"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end class Tag < XML::ConfigClass def has_multiple_values? true end def _section :'tag' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tag def tag if @create_children @subclasses['tag'] ||= Tag.new(parent_instance: self, create_children: @create_children) else Tag.new(parent_instance: self) end end class Action < ConfigClass def has_multiple_values? false end def _section :'action' end @props={"traffic-distribution-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan traffic distribution associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-traffic-distribution/entry/@name", "#config/shared/profiles/sdwan-traffic-distribution/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-traffic-distribution/entry/@name"]}, "app-failover-for-nat-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"keep-existing-link", "help-string"=>"For NAT sessions, specify whether to move to a better path", "enum"=> [{"value"=>"keep-existing-link", "help-string"=>"Keep session on existing link"}, {"value"=>"failover-to-better-path", "help-string"=>"Allow session failover to better path"}]}} # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile prop_get('traffic-distribution-profile') end # attach sdwan traffic distribution associated with this rule def traffic_distribution_profile=(val) prop_set('traffic-distribution-profile', val) end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions prop_get('app-failover-for-nat-sessions') end # For NAT sessions, specify whether to move to a better path def app_failover_for_nat_sessions=(val) prop_set('app-failover-for-nat-sessions', val) end end # class Action def action @subclasses['action'] ||= Action.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "negate-source"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "negate-destination"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the rule"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "no-default"=>"yes"}, "group-tag"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["#config/shared/tag/entry/@name", "#myentry(shared-gateway)/tag/entry/@name"]}, "path-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "help-string"=> "attach sdwan path quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-path-quality/entry/@name", "#config/shared/profiles/sdwan-path-quality/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-path-quality/entry/@name"]}, "saas-quality-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan saas quality profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-saas-quality/entry/@name", "#config/shared/profiles/sdwan-saas-quality/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-saas-quality/entry/@name"]}, "error-correction-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "optional"=>"yes", "help-string"=> "attach sdwan error correction profile associated with this rule", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/sdwan-error-correction/entry/@name", "#config/shared/profiles/sdwan-error-correction/entry/@name", "#myentry(shared-gateway)/profiles/sdwan-error-correction/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def negate_source prop_get('negate-source') end def negate_source=(val) prop_set('negate-source', val) end def negate_destination prop_get('negate-destination') end def negate_destination=(val) prop_set('negate-destination', val) end # Disable the rule def disabled prop_get('disabled') end # Disable the rule def disabled=(val) prop_set('disabled', val) end def description prop_get('description') end def description=(val) prop_set('description', val) end def group_tag prop_get('group-tag') end def group_tag=(val) prop_set('group-tag', val) end # attach sdwan path quality profile associated with this rule def path_quality_profile prop_get('path-quality-profile') end # attach sdwan path quality profile associated with this rule def path_quality_profile=(val) prop_set('path-quality-profile', val) end # attach sdwan saas quality profile associated with this rule def saas_quality_profile prop_get('saas-quality-profile') end # attach sdwan saas quality profile associated with this rule def saas_quality_profile=(val) prop_set('saas-quality-profile', val) end # attach sdwan error correction profile associated with this rule def error_correction_profile prop_get('error-correction-profile') end # attach sdwan error correction profile associated with this rule def error_correction_profile=(val) prop_set('error-correction-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Rules def rules if @create_children @subclasses['rules'] ||= Rules.new(parent_instance: self, create_children: @create_children) else Rules.new(parent_instance: self) end end @props={} end # class Sdwan def sdwan @subclasses['sdwan'] ||= Sdwan.new(parent_instance: self, create_children: @create_children) end @props={} end # class Rulebase def rulebase @subclasses['rulebase'] ||= Rulebase.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "sub-type"=>"object-name", "help-string"=>"shared-gateway name"}, "display-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # shared-gateway name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def display_name prop_get('display-name') end # alphanumeric string [ 0-9a-zA-Z._-] def display_name=(val) prop_set('display-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SharedGateway def shared_gateway if @create_children @subclasses['shared-gateway'] ||= SharedGateway.new(parent_instance: self, create_children: @create_children) else SharedGateway.new(parent_instance: self) end end class Lldp < ConfigClass def has_multiple_values? false end def _section :'lldp' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "transmit-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "optional"=>"yes", "default"=>"30"}, "transmit-delay"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "optional"=>"yes", "default"=>"2"}, "hold-time-multiple"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"100", "optional"=>"yes", "default"=>"4"}, "notification-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "optional"=>"yes", "default"=>"5"}, "tx-credit-max"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"10", "optional"=>"yes", "default"=>"5"}, "tx-fast-init"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"8", "optional"=>"yes", "default"=>"4"}, "reinit-delay"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"10", "optional"=>"yes", "default"=>"2"}, "msg-fast-tx"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "optional"=>"yes", "default"=>"1"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end def transmit_interval prop_get('transmit-interval') end def transmit_interval=(val) prop_set('transmit-interval', val) end def transmit_delay prop_get('transmit-delay') end def transmit_delay=(val) prop_set('transmit-delay', val) end def hold_time_multiple prop_get('hold-time-multiple') end def hold_time_multiple=(val) prop_set('hold-time-multiple', val) end def notification_interval prop_get('notification-interval') end def notification_interval=(val) prop_set('notification-interval', val) end def tx_credit_max prop_get('tx-credit-max') end def tx_credit_max=(val) prop_set('tx-credit-max', val) end def tx_fast_init prop_get('tx-fast-init') end def tx_fast_init=(val) prop_set('tx-fast-init', val) end def reinit_delay prop_get('reinit-delay') end def reinit_delay=(val) prop_set('reinit-delay', val) end def msg_fast_tx prop_get('msg-fast-tx') end def msg_fast_tx=(val) prop_set('msg-fast-tx', val) end end # class Lldp def lldp @subclasses['lldp'] ||= Lldp.new(parent_instance: self, create_children: @create_children) end class UnderlayNet < ConfigClass def has_multiple_values? false end def _section :'underlay-net' end class IpMapping < XML::ConfigClass def has_multiple_values? true end def _section :'ip-mapping' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "overlay-ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "underlay-ip"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or address object", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask and not(contains(ip-netmask, ':')) and (contains(ip-netmask, '/32') or not(contains(ip-netmask, '/')))]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or address object def overlay_ip prop_get('overlay-ip') end # IP address or address object def overlay_ip=(val) prop_set('overlay-ip', val) end # IP address or address object def underlay_ip prop_get('underlay-ip') end # IP address or address object def underlay_ip=(val) prop_set('underlay-ip', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpMapping def ip_mapping if @create_children @subclasses['ip-mapping'] ||= IpMapping.new(parent_instance: self, create_children: @create_children) else IpMapping.new(parent_instance: self) end end @props={} end # class UnderlayNet def underlay_net @subclasses['underlay-net'] ||= UnderlayNet.new(parent_instance: self, create_children: @create_children) end @props={} end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Vsys < XML::ConfigClass def has_multiple_values? true end def _section :'vsys' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Nat < ConfigClass def has_multiple_values? false end def _section :'nat' end @props={"reserve-ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"reserve translated IP for specified time"}, "reserve-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"604800", "help-string"=>"reserve time value in seconds"}} # reserve translated IP for specified time def reserve_ip prop_get('reserve-ip') end # reserve translated IP for specified time def reserve_ip=(val) prop_set('reserve-ip', val) end # reserve time value in seconds def reserve_time prop_get('reserve-time') end # reserve time value in seconds def reserve_time=(val) prop_set('reserve-time', val) end end # class Nat def nat @subclasses['nat'] ||= Nat.new(parent_instance: self, create_children: @create_children) end class SslDecrypt < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt' end @props={"allow-forward-decrypted-content"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Allow forwarding of decrypted content"}, "url-wait__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "prune-on"=>"single-vsys-mode", "help-string"=>"set if wait for url category if not in cache"}, "url-proxy__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=> "set if proxy for ssl sessions if ip's url category is blocked"}, "notify-user__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=>"set if user notification should be enabled"}, "answer-timeout__5"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"86400", "prune-on"=>"single-vsys-mode", "help-string"=>"set user reply timeout value in seconds"}, "crl__6"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=>"set whether to use CRL to check certificate status"}, "ocsp__7"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=>"set whether to use OCSP to check certificate status"}, "block-unknown-cert__8"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "prune-on"=>"single-vsys-mode", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert__9"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"bool", "default"=>"no", "prune-on"=>"single-vsys-mode", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "cert-status-timeout__10"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "prune-on"=>"single-vsys-mode", "help-string"=>"set cert status query timeout value in seconds"}} # Allow forwarding of decrypted content def allow_forward_decrypted_content prop_get('allow-forward-decrypted-content') end # Allow forwarding of decrypted content def allow_forward_decrypted_content=(val) prop_set('allow-forward-decrypted-content', val) end # set if wait for url category if not in cache def url_wait__2 prop_get('url-wait__2') end # set if wait for url category if not in cache def url_wait__2=(val) prop_set('url-wait__2', val) end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy__3 prop_get('url-proxy__3') end # set if proxy for ssl sessions if ip's url category is blocked def url_proxy__3=(val) prop_set('url-proxy__3', val) end # set if user notification should be enabled def notify_user__4 prop_get('notify-user__4') end # set if user notification should be enabled def notify_user__4=(val) prop_set('notify-user__4', val) end # set user reply timeout value in seconds def answer_timeout__5 prop_get('answer-timeout__5') end # set user reply timeout value in seconds def answer_timeout__5=(val) prop_set('answer-timeout__5', val) end # set whether to use CRL to check certificate status def crl__6 prop_get('crl__6') end # set whether to use CRL to check certificate status def crl__6=(val) prop_set('crl__6', val) end # set whether to use OCSP to check certificate status def ocsp__7 prop_get('ocsp__7') end # set whether to use OCSP to check certificate status def ocsp__7=(val) prop_set('ocsp__7', val) end # whether to block a session if cert. status is unknown def block_unknown_cert__8 prop_get('block-unknown-cert__8') end # whether to block a session if cert. status is unknown def block_unknown_cert__8=(val) prop_set('block-unknown-cert__8', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert__9 prop_get('block-timeout-cert__9') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert__9=(val) prop_set('block-timeout-cert__9', val) end # set cert status query timeout value in seconds def cert_status_timeout__10 prop_get('cert-status-timeout__10') end # set cert status query timeout value in seconds def cert_status_timeout__10=(val) prop_set('cert-status-timeout__10', val) end end # class SslDecrypt def ssl_decrypt @subclasses['ssl-decrypt'] ||= SslDecrypt.new(parent_instance: self, create_children: @create_children) end @props={} end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class Import < ConfigClass def has_multiple_values? false end def _section :'import' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "affects"=>"../../../../../zone", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/log-card/units/entry/@name", "#myentry(devices)/deviceconfig/log-fwd-card/interface/entry/units/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[tap]/@name", "#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class Vlan < XML::ConfigClass def has_multiple_values? true end def _section :'vlan' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Vlan def vlan if @create_children @subclasses['vlan'] ||= Vlan.new(parent_instance: self, create_children: @create_children) else Vlan.new(parent_instance: self) end end class VirtualRouter < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-router' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VirtualRouter def virtual_router if @create_children @subclasses['virtual-router'] ||= VirtualRouter.new(parent_instance: self, create_children: @create_children) else VirtualRouter.new(parent_instance: self) end end class LogicalRouter < XML::ConfigClass def has_multiple_values? true end def _section :'logical-router' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LogicalRouter def logical_router if @create_children @subclasses['logical-router'] ||= LogicalRouter.new(parent_instance: self, create_children: @create_children) else LogicalRouter.new(parent_instance: self) end end @props={} end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class Resource < ConfigClass def has_multiple_values? false end def _section :'resource' end @props={"max-sessions"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"80000040", "help-string"=>"Maximum number of sessions allowed for this vsys"}, "max-site-to-site-vpn-tunnels"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10000", "platform-max"=>"cfg.general.max-ssl-tunnel", "help-string"=> "Maximum number of site to site vpn tunnels allowed for this vsys"}, "max-concurrent-ssl-vpn-tunnels"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "platform-max"=>"cfg.general.max-ssl-tunnel", "help-string"=> "Maximum number of concurrent ssl vpn tunnels allowed for this vsys"}, "max-security-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"65000", "platform-max"=>"cfg.general.max-policy-rule", "help-string"=>"Maximum number of security rules allowed for this vsys"}, "max-nat-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"16000", "platform-max"=>"cfg.general.max-nat-policy-rule", "help-string"=>"Maximum number of NAT rules allowed for this vsys"}, "max-ssl-decryption-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"5000", "platform-max"=>"cfg.general.max-ssl-policy-rule", "help-string"=> "Maximum number of ssl decryption rules allowed for this vsys"}, "max-qos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"8000", "platform-max"=>"cfg.general.max-qos-policy-rule", "help-string"=>"Maximum number of QoS rules allowed for this vsys"}, "max-application-override-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4000", "platform-max"=>"cfg.general.max-oride-policy-rule", "help-string"=> "Maximum number of application override rules allowed for this vsys"}, "max-pbf-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"2000", "platform-max"=>"cfg.general.max-pbf-policy-rule", "help-string"=> "Maximum number of policy based forwarding rules allowed for this vsys"}, "max-auth-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"8000", "platform-max"=>"cfg.general.max-auth-policy-rule", "help-string"=> "Maximum number of authentication rules allowed for this vsys"}, "max-dos-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"2000", "platform-max"=>"cfg.general.max-dos-policy-rule", "help-string"=>"Maximum number of DoS rules allowed for this vsys"}, "max-sdwan-rules"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"2000", "platform-max"=>"cfg.general.max-sdwan-policy-rule", "help-string"=>"Maximum number of sdwan rules allowed for this vsys"}} # Maximum number of sessions allowed for this vsys def max_sessions prop_get('max-sessions') end # Maximum number of sessions allowed for this vsys def max_sessions=(val) prop_set('max-sessions', val) end # Maximum number of site to site vpn tunnels allowed for this vsys def max_site_to_site_vpn_tunnels prop_get('max-site-to-site-vpn-tunnels') end # Maximum number of site to site vpn tunnels allowed for this vsys def max_site_to_site_vpn_tunnels=(val) prop_set('max-site-to-site-vpn-tunnels', val) end # Maximum number of concurrent ssl vpn tunnels allowed for this vsys def max_concurrent_ssl_vpn_tunnels prop_get('max-concurrent-ssl-vpn-tunnels') end # Maximum number of concurrent ssl vpn tunnels allowed for this vsys def max_concurrent_ssl_vpn_tunnels=(val) prop_set('max-concurrent-ssl-vpn-tunnels', val) end # Maximum number of security rules allowed for this vsys def max_security_rules prop_get('max-security-rules') end # Maximum number of security rules allowed for this vsys def max_security_rules=(val) prop_set('max-security-rules', val) end # Maximum number of NAT rules allowed for this vsys def max_nat_rules prop_get('max-nat-rules') end # Maximum number of NAT rules allowed for this vsys def max_nat_rules=(val) prop_set('max-nat-rules', val) end # Maximum number of ssl decryption rules allowed for this vsys def max_ssl_decryption_rules prop_get('max-ssl-decryption-rules') end # Maximum number of ssl decryption rules allowed for this vsys def max_ssl_decryption_rules=(val) prop_set('max-ssl-decryption-rules', val) end # Maximum number of QoS rules allowed for this vsys def max_qos_rules prop_get('max-qos-rules') end # Maximum number of QoS rules allowed for this vsys def max_qos_rules=(val) prop_set('max-qos-rules', val) end # Maximum number of application override rules allowed for this vsys def max_application_override_rules prop_get('max-application-override-rules') end # Maximum number of application override rules allowed for this vsys def max_application_override_rules=(val) prop_set('max-application-override-rules', val) end # Maximum number of policy based forwarding rules allowed for this vsys def max_pbf_rules prop_get('max-pbf-rules') end # Maximum number of policy based forwarding rules allowed for this vsys def max_pbf_rules=(val) prop_set('max-pbf-rules', val) end # Maximum number of authentication rules allowed for this vsys def max_auth_rules prop_get('max-auth-rules') end # Maximum number of authentication rules allowed for this vsys def max_auth_rules=(val) prop_set('max-auth-rules', val) end # Maximum number of DoS rules allowed for this vsys def max_dos_rules prop_get('max-dos-rules') end # Maximum number of DoS rules allowed for this vsys def max_dos_rules=(val) prop_set('max-dos-rules', val) end # Maximum number of sdwan rules allowed for this vsys def max_sdwan_rules prop_get('max-sdwan-rules') end # Maximum number of sdwan rules allowed for this vsys def max_sdwan_rules=(val) prop_set('max-sdwan-rules', val) end end # class Resource def resource @subclasses['resource'] ||= Resource.new(parent_instance: self, create_children: @create_children) end class VisibleVsys < XML::ConfigClass def has_multiple_values? true end def _section :'visible-vsys' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["#vsys/entry[(@name!='$myvsysname')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VisibleVsys def visible_vsys if @create_children @subclasses['visible-vsys'] ||= VisibleVsys.new(parent_instance: self, create_children: @create_children) else VisibleVsys.new(parent_instance: self) end end @props={"dns-proxy"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Dns proxy object to use for resolving fqdns", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/dns-proxy/entry/@name", "#myentry(vsys)/dns-proxy/entry/@name"]}} # Dns proxy object to use for resolving fqdns def dns_proxy prop_get('dns-proxy') end # Dns proxy object to use for resolving fqdns def dns_proxy=(val) prop_set('dns-proxy', val) end end # class Import def import @subclasses['import'] ||= Import.new(parent_instance: self, create_children: @create_children) end class Route < ConfigClass def has_multiple_values? false end def _section :'route' end class Service < XML::ConfigClass def has_multiple_values? true end def _section :'service' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "complete-handler"=>"pan-vsys-ip-completer", "autocomplete"=>"yes"}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "complete-handler"=>"pan-vsys-ip-completer", "autocomplete"=>"yes"}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"Service name", "autocomplete"=>"yes", "memberof"=> ["string('radius')", "string('ldap')", "string('kerberos')", "string('tacplus')", "string('syslog')", "string('email')", "string('http')", "string('snmp')", "string('uid-agent')", "string('vmmonitor')", "string('mfa')", "string('netflow')", "string('ddns')"]}} # Service name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Service def service if @create_children @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) else Service.new(parent_instance: self) end end @props={} end # class Route def route @subclasses['route'] ||= Route.new(parent_instance: self, create_children: @create_children) end class AuthenticationProfile < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SingleSignOn < ConfigClass def has_multiple_values? false end def _section :'single-sign-on' end @props={"realm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Kerberos realm to be used for authentication"}, "service-principal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^([:/a-zA-Z0-9._-])+$", "help-string"=>"Kerberos service principal"}, "kerberos-keytab"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"8192", "encrypt"=>"yes", "help-string"=>"Kerberos keytab"}} # Kerberos realm to be used for authentication def realm prop_get('realm') end # Kerberos realm to be used for authentication def realm=(val) prop_set('realm', val) end # Kerberos service principal def service_principal prop_get('service-principal') end # Kerberos service principal def service_principal=(val) prop_set('service-principal', val) end # Kerberos keytab def kerberos_keytab prop_get('kerberos-keytab') end # Kerberos keytab def kerberos_keytab=(val) prop_set('kerberos-keytab', val) end end # class SingleSignOn def single_sign_on @subclasses['single-sign-on'] ||= SingleSignOn.new(parent_instance: self, create_children: @create_children) end class Lockout < ConfigClass def has_multiple_values? false end def _section :'lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"0", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class Lockout def lockout @subclasses['lockout'] ||= Lockout.new(parent_instance: self, create_children: @create_children) end class AllowList < XML::ConfigClass def has_multiple_values? true end def _section :'allow-list' end @props={"member"=> {"node-type"=>"element", "loose-membership"=>"yes", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name"], "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"1023"}, "enum"=>[{"value"=>"all", "help-string"=>"all user and user groups"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AllowList def allow_list if @create_children @subclasses['allow-list'] ||= AllowList.new(parent_instance: self, create_children: @create_children) else AllowList.new(parent_instance: self) end end class Method < XML::ConfigClass def has_multiple_values? true end def _section :'method' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class LocalDatabase < ConfigClass def has_multiple_values? false end def _section :'local-database' end @props={} end # class LocalDatabase def local_database @subclasses['local-database'] ||= LocalDatabase.new(parent_instance: self, create_children: @create_children) end class Radius < ConfigClass def has_multiple_values? false end def _section :'radius' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"RADIUS server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/radius/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/radius/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from RADIUS"}} # RADIUS server profile object def server_profile prop_get('server-profile') end # RADIUS server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from RADIUS def checkgroup prop_get('checkgroup') end # Retrieve user group from RADIUS def checkgroup=(val) prop_set('checkgroup', val) end end # class Radius def radius @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) end class Ldap < ConfigClass def has_multiple_values? false end def _section :'ldap' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/ldap/entry/@name"]}, "login-attribute"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=> "Default is samAccountName for Active Directory, uid for other directory servers"}, "passwd-exp-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"255", "optional"=>"yes", "help-string"=>"Avail for Active Directory, eDir", "default"=>"7"}} # LDAP server profile object def server_profile prop_get('server-profile') end # LDAP server profile object def server_profile=(val) prop_set('server-profile', val) end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute prop_get('login-attribute') end # Default is samAccountName for Active Directory, uid for other directory servers def login_attribute=(val) prop_set('login-attribute', val) end # Avail for Active Directory, eDir def passwd_exp_days prop_get('passwd-exp-days') end # Avail for Active Directory, eDir def passwd_exp_days=(val) prop_set('passwd-exp-days', val) end end # class Ldap def ldap @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) end class Kerberos__5 < ConfigClass def has_multiple_values? false end def _section :'kerberos__5' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/kerberos/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/kerberos/entry/@name"]}, "realm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "subtype"=>"object-name", "help-string"=>"Realm name to be used for authentication"}} # Kerberos server profile object def server_profile prop_get('server-profile') end # Kerberos server profile object def server_profile=(val) prop_set('server-profile', val) end # Realm name to be used for authentication def realm prop_get('realm') end # Realm name to be used for authentication def realm=(val) prop_set('realm', val) end end # class Kerberos__5 def kerberos__5 @subclasses['kerberos__5'] ||= Kerberos__5.new(parent_instance: self, create_children: @create_children) end class Tacplus < ConfigClass def has_multiple_values? false end def _section :'tacplus' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"TACACS+ server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/tacplus/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/tacplus/entry/@name"]}, "checkgroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Retrieve user group from TACACS+"}} # TACACS+ server profile object def server_profile prop_get('server-profile') end # TACACS+ server profile object def server_profile=(val) prop_set('server-profile', val) end # Retrieve user group from TACACS+ def checkgroup prop_get('checkgroup') end # Retrieve user group from TACACS+ def checkgroup=(val) prop_set('checkgroup', val) end end # class Tacplus def tacplus @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) end class SamlIdp < ConfigClass def has_multiple_values? false end def _section :'saml-idp' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"IdP server profile object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/saml-idp/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/saml-idp/entry/@name"]}, "enable-single-logout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable single logout"}, "request-signing-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"64", "complete-handler"=>"check-cert-fields-completer", "help-string"=>"Signing certificate for SAML requests", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry/@name", "#myentry(vsys)/certificate/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"Certificate profile for IDP and SP", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "attribute-name-username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response", "uiHint-fieldLabel"=>"Username Attribute"}, "attribute-name-usergroup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup", "uiHint-fieldLabel"=>"User Group Attribute"}, "attribute-name-admin-role"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role", "uiHint-fieldLabel"=>"Admin Role Attribute"}, "attribute-name-access-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain", "uiHint-fieldLabel"=>"Access Domain Attribute"}} # IdP server profile object def server_profile prop_get('server-profile') end # IdP server profile object def server_profile=(val) prop_set('server-profile', val) end # Enable single logout def enable_single_logout prop_get('enable-single-logout') end # Enable single logout def enable_single_logout=(val) prop_set('enable-single-logout', val) end # Signing certificate for SAML requests def request_signing_certificate prop_get('request-signing-certificate') end # Signing certificate for SAML requests def request_signing_certificate=(val) prop_set('request-signing-certificate', val) end # Certificate profile for IDP and SP def certificate_profile prop_get('certificate-profile') end # Certificate profile for IDP and SP def certificate_profile=(val) prop_set('certificate-profile', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username prop_get('attribute-name-username') end # Attribute name for username to be extracted from SAML response def attribute_name_username=(val) prop_set('attribute-name-username', val) end # usergroup def attribute_name_usergroup prop_get('attribute-name-usergroup') end # usergroup def attribute_name_usergroup=(val) prop_set('attribute-name-usergroup', val) end # admin-role def attribute_name_admin_role prop_get('attribute-name-admin-role') end # admin-role def attribute_name_admin_role=(val) prop_set('attribute-name-admin-role', val) end # access-domain def attribute_name_access_domain prop_get('attribute-name-access-domain') end # access-domain def attribute_name_access_domain=(val) prop_set('attribute-name-access-domain', val) end end # class SamlIdp def saml_idp @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) end @props={} end # class Method def method if @create_children @subclasses['method'] ||= Method.new(parent_instance: self, create_children: @create_children) else Method.new(parent_instance: self) end end class MultiFactorAuth < ConfigClass def has_multiple_values? false end def _section :'multi-factor-auth' end class Factors < XML::ConfigClass def has_multiple_values? true end def _section :'factors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "max-count"=>"3", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/mfa-server-profile/entry/@name", "#myentry(vsys)/server-profile/mfa-server-profile/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Factors def factors if @create_children @subclasses['factors'] ||= Factors.new(parent_instance: self, create_children: @create_children) else Factors.new(parent_instance: self) end end @props={"mfa-enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable Additional Authentication Factors"}} # Enable Additional Authentication Factors def mfa_enable prop_get('mfa-enable') end # Enable Additional Authentication Factors def mfa_enable=(val) prop_set('mfa-enable', val) end end # class MultiFactorAuth def multi_factor_auth @subclasses['multi-factor-auth'] ||= MultiFactorAuth.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Group name"}, "username-modifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"%USERINPUT%", "help-string"=>"Username modifier(Not for SAML) to handle user domain", "multi-types"=> {"string"=>{"loose-membership"=>"yes", "maxlen"=>"127"}, "enum"=> [{"value"=>"%USERINPUT%"}, {"value"=>"%USERINPUT%@%USERDOMAIN%"}, {"value"=>"%USERDOMAIN%\\%USERINPUT%"}]}}, "user-domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "regex"=> "^[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|\\.]{1}[^\\\\\\/\\:\\*\\?\\\"\\<\\>\\|]{0,62}$", "help-string"=>"Domain name(Not for SAML) to be used for authentication"}} # Group name def name prop_get('@name') end # Username modifier(Not for SAML) to handle user domain def username_modifier prop_get('username-modifier') end # Username modifier(Not for SAML) to handle user domain def username_modifier=(val) prop_set('username-modifier', val) end # Domain name(Not for SAML) to be used for authentication def user_domain prop_get('user-domain') end # Domain name(Not for SAML) to be used for authentication def user_domain=(val) prop_set('user-domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationProfile def authentication_profile if @create_children @subclasses['authentication-profile'] ||= AuthenticationProfile.new(parent_instance: self, create_children: @create_children) else AuthenticationProfile.new(parent_instance: self) end end class AuthenticationSequence < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-sequence' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AuthenticationProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-profiles' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#config/shared/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name", "#myentry(vsys)/authentication-profile/entry[not(method/none) and not(method/saml-idp) and not(multi-factor-auth/mfa-enable='yes')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationProfiles def authentication_profiles if @create_children @subclasses['authentication-profiles'] ||= AuthenticationProfiles.new(parent_instance: self, create_children: @create_children) else AuthenticationProfiles.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"Authentication sequence name"}, "use-domain-find-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Attempt to use domain to determine authentication profile"}} # Authentication sequence name def name prop_get('@name') end # Attempt to use domain to determine authentication profile def use_domain_find_profile prop_get('use-domain-find-profile') end # Attempt to use domain to determine authentication profile def use_domain_find_profile=(val) prop_set('use-domain-find-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthenticationSequence def authentication_sequence if @create_children @subclasses['authentication-sequence'] ||= AuthenticationSequence.new(parent_instance: self, create_children: @create_children) else AuthenticationSequence.new(parent_instance: self) end end class CertificateProfile < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class UsernameField < XML::ConfigClass def has_multiple_values? true end def _section :'username-field' end @props={"subject"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject", "enum"=>[{"value"=>"common-name"}]}, "subject-alt"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"get user name from subject alternative name", "enum"=>[{"value"=>"email"}, {"value"=>"principal-name"}]}} # get user name from subject def subject prop_get('subject') end # get user name from subject def subject=(val) prop_set('subject', val) end # get user name from subject alternative name def subject_alt prop_get('subject-alt') end # get user name from subject alternative name def subject_alt=(val) prop_set('subject-alt', val) end end # class UsernameField def username_field if @create_children @subclasses['username-field'] ||= UsernameField.new(parent_instance: self, create_children: @create_children) else UsernameField.new(parent_instance: self) end end class CA < XML::ConfigClass def has_multiple_values? true end def _section :'CA' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"63", "help-string"=>"CA file for client certificate", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate/entry[ca='yes']/@name", "#myentry(vsys)/certificate/entry[ca='yes']/@name"]}, "default-ocsp-url"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^http(s)?://.+$", "help-string"=>"default URL for ocsp verification"}, "ocsp-verify-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "help-string"=>"Certificate to verify signature in OCSP response", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate/entry/@name", "#myentry(vsys)/certificate/entry/@name"]}, "template-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"Certificate Template Name / OID for the certificate"}} # CA file for client certificate def name prop_get('@name') end # default URL for ocsp verification def default_ocsp_url prop_get('default-ocsp-url') end # default URL for ocsp verification def default_ocsp_url=(val) prop_set('default-ocsp-url', val) end # Certificate to verify signature in OCSP response def ocsp_verify_cert prop_get('ocsp-verify-cert') end # Certificate to verify signature in OCSP response def ocsp_verify_cert=(val) prop_set('ocsp-verify-cert', val) end # Certificate Template Name / OID for the certificate def template_name prop_get('template-name') end # Certificate Template Name / OID for the certificate def template_name=(val) prop_set('template-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CA def CA if @create_children @subclasses['CA'] ||= CA.new(parent_instance: self, create_children: @create_children) else CA.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Profile name"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "uiHint-fieldLabel"=>"User Domain"}, "use-crl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ocsp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "crl-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set CRL receive timeout value in seconds"}, "ocsp-receive-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"set OCSP receive timeout value in seconds"}, "ocsp-exclude-nonce"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to exclude nonce extension for OCSP requests"}, "cert-status-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "default"=>"5", "help-string"=>"set cert status query timeout value in seconds"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}, "block-unauthenticated-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block session if the certificate was not issued to the authenticating device"}, "block-expired-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is expired"}} # Profile name def name prop_get('@name') end # alphanumeric string [ 0-9a-zA-Z._-] def domain prop_get('domain') end # alphanumeric string [ 0-9a-zA-Z._-] def domain=(val) prop_set('domain', val) end def use_crl prop_get('use-crl') end def use_crl=(val) prop_set('use-crl', val) end def use_ocsp prop_get('use-ocsp') end def use_ocsp=(val) prop_set('use-ocsp', val) end # set CRL receive timeout value in seconds def crl_receive_timeout prop_get('crl-receive-timeout') end # set CRL receive timeout value in seconds def crl_receive_timeout=(val) prop_set('crl-receive-timeout', val) end # set OCSP receive timeout value in seconds def ocsp_receive_timeout prop_get('ocsp-receive-timeout') end # set OCSP receive timeout value in seconds def ocsp_receive_timeout=(val) prop_set('ocsp-receive-timeout', val) end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce prop_get('ocsp-exclude-nonce') end # whether to exclude nonce extension for OCSP requests def ocsp_exclude_nonce=(val) prop_set('ocsp-exclude-nonce', val) end # set cert status query timeout value in seconds def cert_status_timeout prop_get('cert-status-timeout') end # set cert status query timeout value in seconds def cert_status_timeout=(val) prop_set('cert-status-timeout', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert prop_get('block-unauthenticated-cert') end # whether to block session if the certificate was not issued to the authenticating device def block_unauthenticated_cert=(val) prop_set('block-unauthenticated-cert', val) end # whether to block a session if cert. status is expired def block_expired_cert prop_get('block-expired-cert') end # whether to block a session if cert. status is expired def block_expired_cert=(val) prop_set('block-expired-cert', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CertificateProfile def certificate_profile if @create_children @subclasses['certificate-profile'] ||= CertificateProfile.new(parent_instance: self, create_children: @create_children) else CertificateProfile.new(parent_instance: self) end end class ServerProfile__9 < ConfigClass def has_multiple_values? false end def _section :'server-profile__9' end class Ldap < XML::ConfigClass def has_multiple_values? true end def _section :'ldap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"ldap server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"389", "help-string"=>"default 389 for LDAP, 636 for LDAPS"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap server ip or host name. def address prop_get('address') end # ldap server ip or host name. def address=(val) prop_set('address', val) end # default 389 for LDAP, 636 for LDAPS def port prop_get('port') end # default 389 for LDAP, 636 for LDAPS def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ldap-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"other", "enum"=> [{"value"=>"active-directory"}, {"value"=>"e-directory"}, {"value"=>"sun"}, {"value"=>"other"}]}, "ssl"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "verify-server-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify server certificate for SSL sessions"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "base"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"Default base distinguished name (DN) to use for searches"}, "bind-dn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "regex"=>"^[^[:cntrl:]]+$", "help-string"=>"bind distinguished name"}, "bind-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"121", "encrypt"=>"yes", "help-string"=>"bind password"}, "timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"30", "help-string"=>"number of seconds to wait for performing searches"}, "bind-timelimit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"30", "help-string"=>"number of seconds to use for connecting to servers"}, "retry-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"3600", "help-string"=>"Interval (seconds) for reconnecting LDAP server", "default"=>"60"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def ldap_type prop_get('ldap-type') end def ldap_type=(val) prop_set('ldap-type', val) end def ssl prop_get('ssl') end def ssl=(val) prop_set('ssl', val) end # Verify server certificate for SSL sessions def verify_server_certificate prop_get('verify-server-certificate') end # Verify server certificate for SSL sessions def verify_server_certificate=(val) prop_set('verify-server-certificate', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Default base distinguished name (DN) to use for searches def base prop_get('base') end # Default base distinguished name (DN) to use for searches def base=(val) prop_set('base', val) end # bind distinguished name def bind_dn prop_get('bind-dn') end # bind distinguished name def bind_dn=(val) prop_set('bind-dn', val) end # bind password def bind_password prop_get('bind-password') end # bind password def bind_password=(val) prop_set('bind-password', val) end # number of seconds to wait for performing searches def timelimit prop_get('timelimit') end # number of seconds to wait for performing searches def timelimit=(val) prop_set('timelimit', val) end # number of seconds to use for connecting to servers def bind_timelimit prop_get('bind-timelimit') end # number of seconds to use for connecting to servers def bind_timelimit=(val) prop_set('bind-timelimit', val) end # Interval (seconds) for reconnecting LDAP server def retry_interval prop_get('retry-interval') end # Interval (seconds) for reconnecting LDAP server def retry_interval=(val) prop_set('retry-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ldap def ldap if @create_children @subclasses['ldap'] ||= Ldap.new(parent_instance: self, create_children: @create_children) else Ldap.new(parent_instance: self) end end class Radius < XML::ConfigClass def has_multiple_values? true end def _section :'radius' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Protocol < XML::ConfigClass def has_multiple_values? true end def _section :'protocol' end class CHAP < ConfigClass def has_multiple_values? false end def _section :'CHAP' end @props={} end # class CHAP def CHAP @subclasses['CHAP'] ||= CHAP.new(parent_instance: self, create_children: @create_children) end class PAP < ConfigClass def has_multiple_values? false end def _section :'PAP' end @props={} end # class PAP def PAP @subclasses['PAP'] ||= PAP.new(parent_instance: self, create_children: @create_children) end class PEAPMSCHAPv2 < ConfigClass def has_multiple_values? false end def _section :'PEAP-MSCHAPv2' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "allow-pwd-change"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Allow users to change passwords after expiry"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Allow users to change passwords after expiry def allow_pwd_change prop_get('allow-pwd-change') end # Allow users to change passwords after expiry def allow_pwd_change=(val) prop_set('allow-pwd-change', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPMSCHAPv2 def PEAP_MSCHAPv2 @subclasses['PEAP-MSCHAPv2'] ||= PEAPMSCHAPv2.new(parent_instance: self, create_children: @create_children) end class PEAPWithGTC < ConfigClass def has_multiple_values? false end def _section :'PEAP-with-GTC' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class PEAPWithGTC def PEAP_with_GTC @subclasses['PEAP-with-GTC'] ||= PEAPWithGTC.new(parent_instance: self, create_children: @create_children) end class EAPTTLSWithPAP < ConfigClass def has_multiple_values? false end def _section :'EAP-TTLS-with-PAP' end @props={"anon-outer-id"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Make Outer Identity Anonymous"}, "radius-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the RADIUS server", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Make Outer Identity Anonymous def anon_outer_id prop_get('anon-outer-id') end # Make Outer Identity Anonymous def anon_outer_id=(val) prop_set('anon-outer-id', val) end # Certificate profile for verifying the RADIUS server def radius_cert_profile prop_get('radius-cert-profile') end # Certificate profile for verifying the RADIUS server def radius_cert_profile=(val) prop_set('radius-cert-profile', val) end end # class EAPTTLSWithPAP def EAP_TTLS_with_PAP @subclasses['EAP-TTLS-with-PAP'] ||= EAPTTLSWithPAP.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol if @create_children @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) else Protocol.new(parent_instance: self) end end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"RADIUS server IP or host name", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for RADIUS communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"1812", "help-string"=>"RADIUS server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # RADIUS server IP or host name def ip_address prop_get('ip-address') end # RADIUS server IP or host name def ip_address=(val) prop_set('ip-address', val) end # Shared secret for RADIUS communication def secret prop_get('secret') end # Shared secret for RADIUS communication def secret=(val) prop_set('secret', val) end # RADIUS server port def port prop_get('port') end # RADIUS server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"120", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "retries"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"3", "help-string"=>"number of attempts before giving up authentication"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # number of attempts before giving up authentication def retries prop_get('retries') end # number of attempts before giving up authentication def retries=(val) prop_set('retries', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Radius def radius if @create_children @subclasses['radius'] ||= Radius.new(parent_instance: self, create_children: @create_children) else Radius.new(parent_instance: self) end end class Scp < XML::ConfigClass def has_multiple_values? true end def _section :'scp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "help-string"=>"SCP hostname"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"22", "help-string"=>"SCP port"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"128", "regex"=>"[^']*", "help-string"=>"SCP username"}, "password"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "regex"=>"[^']*", "help-string"=>"SCP Password", "encrypt"=>"yes"}} # alphanumeric string def name prop_get('@name') end # SCP hostname def server prop_get('server') end # SCP hostname def server=(val) prop_set('server', val) end # SCP port def port prop_get('port') end # SCP port def port=(val) prop_set('port', val) end # SCP username def username prop_get('username') end # SCP username def username=(val) prop_set('username', val) end # SCP Password def password prop_get('password') end # SCP Password def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scp def scp if @create_children @subclasses['scp'] ||= Scp.new(parent_instance: self, create_children: @create_children) else Scp.new(parent_instance: self) end end class Kerberos < XML::ConfigClass def has_multiple_values? true end def _section :'kerberos' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Kerberos server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"88", "help-string"=>"Kerberos Domain Controller "}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Kerberos server ip or host name. def host prop_get('host') end # Kerberos server ip or host name. def host=(val) prop_set('host', val) end # Kerberos Domain Controller def port prop_get('port') end # Kerberos Domain Controller def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Kerberos def kerberos if @create_children @subclasses['kerberos'] ||= Kerberos.new(parent_instance: self, create_children: @create_children) else Kerberos.new(parent_instance: self) end end class Tacplus < XML::ConfigClass def has_multiple_values? true end def _section :'tacplus' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"TACACS+ server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"minlen"=>"1", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Host name."}}}, "secret"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"Shared secret for TACACS+ communication"}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"49", "help-string"=>"TACACS+ server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # TACACS+ server ip or host name. def address prop_get('address') end # TACACS+ server ip or host name. def address=(val) prop_set('address', val) end # Shared secret for TACACS+ communication def secret prop_get('secret') end # Shared secret for TACACS+ communication def secret=(val) prop_set('secret', val) end # TACACS+ server port def port prop_get('port') end # TACACS+ server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"30", "default"=>"3", "help-string"=> "number of seconds to wait for when performing authentication"}, "use-single-connection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Use single connection for all authentication"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"CHAP", "help-string"=>"Select authentication protocol", "enum"=>[{"value"=>"CHAP"}, {"value"=>"PAP"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # number of seconds to wait for when performing authentication def timeout prop_get('timeout') end # number of seconds to wait for when performing authentication def timeout=(val) prop_set('timeout', val) end # Use single connection for all authentication def use_single_connection prop_get('use-single-connection') end # Use single connection for all authentication def use_single_connection=(val) prop_set('use-single-connection', val) end # Select authentication protocol def protocol prop_get('protocol') end # Select authentication protocol def protocol=(val) prop_set('protocol', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tacplus def tacplus if @create_children @subclasses['tacplus'] ||= Tacplus.new(parent_instance: self, create_children: @create_children) else Tacplus.new(parent_instance: self) end end class SamlIdp < XML::ConfigClass def has_multiple_values? true end def _section :'saml-idp' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "entity-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Unique identifier for SAML IdP"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "complete-handler"=>"check-idp-cert-fields-completer", "help-string"=>"Object name of IdP signing certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry/@name", "#myentry(vsys)/certificate/entry/@name"]}, "sso-url"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Sign On Service URL for the IdP server"}, "sso-bindings"=> {"node-type"=>"element", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "slo-url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"The Single Logout Service URL for the IdP server"}, "slo-bindings"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"post", "enum"=>[{"value"=>"post"}, {"value"=>"redirect"}]}, "validate-idp-certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Certificate revocation check for IdP certificate when checking assertion signature"}, "want-auth-requests-signed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Client auth request signed by cert"}, "max-clock-skew"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"900", "default"=>"60", "help-string"=> "maximum allowed clock skew in second between SAML entities' system time"}, "attribute-name-username-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "default"=>"username", "help-string"=> "Attribute name for username to be extracted from SAML response"}, "attribute-name-usergroup-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"usergroup"}, "attribute-name-admin-role-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"admin-role"}, "attribute-name-access-domain-import"=> {"node-type"=>"element", "internal"=>"yes", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"access-domain"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Unique identifier for SAML IdP def entity_id prop_get('entity-id') end # Unique identifier for SAML IdP def entity_id=(val) prop_set('entity-id', val) end # Object name of IdP signing certificate def certificate prop_get('certificate') end # Object name of IdP signing certificate def certificate=(val) prop_set('certificate', val) end # The Single Sign On Service URL for the IdP server def sso_url prop_get('sso-url') end # The Single Sign On Service URL for the IdP server def sso_url=(val) prop_set('sso-url', val) end def sso_bindings prop_get('sso-bindings') end def sso_bindings=(val) prop_set('sso-bindings', val) end # The Single Logout Service URL for the IdP server def slo_url prop_get('slo-url') end # The Single Logout Service URL for the IdP server def slo_url=(val) prop_set('slo-url', val) end def slo_bindings prop_get('slo-bindings') end def slo_bindings=(val) prop_set('slo-bindings', val) end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate prop_get('validate-idp-certificate') end # Certificate revocation check for IdP certificate when checking assertion signature def validate_idp_certificate=(val) prop_set('validate-idp-certificate', val) end # Client auth request signed by cert def want_auth_requests_signed prop_get('want-auth-requests-signed') end # Client auth request signed by cert def want_auth_requests_signed=(val) prop_set('want-auth-requests-signed', val) end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew prop_get('max-clock-skew') end # maximum allowed clock skew in second between SAML entities' system time def max_clock_skew=(val) prop_set('max-clock-skew', val) end # Attribute name for username to be extracted from SAML response def attribute_name_username_import prop_get('attribute-name-username-import') end # Attribute name for username to be extracted from SAML response def attribute_name_username_import=(val) prop_set('attribute-name-username-import', val) end # usergroup def attribute_name_usergroup_import prop_get('attribute-name-usergroup-import') end # usergroup def attribute_name_usergroup_import=(val) prop_set('attribute-name-usergroup-import', val) end # admin-role def attribute_name_admin_role_import prop_get('attribute-name-admin-role-import') end # admin-role def attribute_name_admin_role_import=(val) prop_set('attribute-name-admin-role-import', val) end # access-domain def attribute_name_access_domain_import prop_get('attribute-name-access-domain-import') end # access-domain def attribute_name_access_domain_import=(val) prop_set('attribute-name-access-domain-import', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SamlIdp def saml_idp if @create_children @subclasses['saml-idp'] ||= SamlIdp.new(parent_instance: self, create_children: @create_children) else SamlIdp.new(parent_instance: self) end end class Netflow < XML::ConfigClass def has_multiple_values? true end def _section :'netflow' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TemplateRefreshRate < ConfigClass def has_multiple_values? false end def _section :'template-refresh-rate' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30"}, "packets"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"600", "default"=>"20"}} def minutes prop_get('minutes') end def minutes=(val) prop_set('minutes', val) end def packets prop_get('packets') end def packets=(val) prop_set('packets', val) end end # class TemplateRefreshRate def template_refresh_rate @subclasses['template-refresh-rate'] ||= TemplateRefreshRate.new(parent_instance: self, create_children: @create_children) end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Netflow server ip or host name.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"loose-membership"=>"yes", "maxlen"=>"63"}}}, "port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "default"=>"2055", "min"=>"1", "max"=>"65535", "help-string"=>"Netflow server port"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Netflow server ip or host name. def host prop_get('host') end # Netflow server ip or host name. def host=(val) prop_set('host', val) end # Netflow server port def port prop_get('port') end # Netflow server port def port=(val) prop_set('port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "active-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"5", "help-string"=>"Active timeout in minutes"}, "export-enterprise-fields"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Export PAN-OS Specific Field Types"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Active timeout in minutes def active_timeout prop_get('active-timeout') end # Active timeout in minutes def active_timeout=(val) prop_set('active-timeout', val) end # Export PAN-OS Specific Field Types def export_enterprise_fields prop_get('export-enterprise-fields') end # Export PAN-OS Specific Field Types def export_enterprise_fields=(val) prop_set('export-enterprise-fields', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Netflow def netflow if @create_children @subclasses['netflow'] ||= Netflow.new(parent_instance: self, create_children: @create_children) else Netflow.new(parent_instance: self) end end class Dns < XML::ConfigClass def has_multiple_values? true end def _section :'dns' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Inheritance < ConfigClass def has_multiple_values? false end def _section :'inheritance' end @props={"source"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Dynamic interface", "autocomplete"=>"yes", "memberof"=> ["name(../../../../../interface/vlan[dhcp-client])", "#myentry(devices)/network/tunnel/ipsec/entry/global-protect-satellite/../tunnel-interface"]}} # Dynamic interface def source prop_get('source') end # Dynamic interface def source=(val) prop_set('source', val) end end # class Inheritance def inheritance @subclasses['inheritance'] ||= Inheritance.new(parent_instance: self, create_children: @create_children) end class Source < ConfigClass def has_multiple_values? false end def _section :'source' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ip/entry/@name) and (('$address'='') or (layer3/ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ip/entry/@name) and (('$address'='') or (ip/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlanip'='') and (('$address'='') or ('$vlanip'='$address'))) )", "substring(string('loopback'), 1, 8*(not('$loip'='') and (('$address'='') or ('$loip'='$address')) ) )", "substring(string('tunnel'), 1, 6*(not('$tunip'='') and (('$address'='') or ('$tunip'='$address')) ) )"]}, "address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ip/entry/@name", "#deviceconfig/system/ip-address[('$ifname'='management') or ('$ifname'='')]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class Source def source @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) end class SourceV6 < ConfigClass def has_multiple_values? false end def _section :'source-v6' end @props={"interface"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Source interface to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[(layer3/ipv6/address/entry/@name) and (('$address'='') or (layer3/ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "#myentry(devices)/network/interface/*/units/entry[(ipv6/address/entry/@name) and (('$address'='') or (ipv6/address/entry/@name='$address'))]/@name", "substring(string('vlan'), 1, 4*(not('$vlan6'='') and (('$address'='') or ('$vlan6'='$address'))))", "substring(string('loopback'), 1, 8*(not('$lo6'='') and (('$address'='') or ('$lo6'='$address'))))", "substring(string('tunnel'), 1, 6*(not('$tun6'='') and (('$address'='') or ('$tun6'='$address'))))"]}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"96", "help-string"=>"Source IP address to use to reach destination", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[('$ifname'='') or (@name='$ifname')]/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*[('$ifname'='') or (local-name(.)='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#myentry(devices)/network/interface/*/units/entry[('$ifname'='') or (@name='$ifname')]/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no') ]/@name", "#deviceconfig/system/ipv6-address[(('$ifname'='management') or ('$ifname'='')) ]"]}} # Source interface to use to reach destination def interface prop_get('interface') end # Source interface to use to reach destination def interface=(val) prop_set('interface', val) end # Source IP address to use to reach destination def address prop_get('address') end # Source IP address to use to reach destination def address=(val) prop_set('address', val) end end # class SourceV6 def source_v6 @subclasses['source-v6'] ||= SourceV6.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "primary"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Primary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"Secondary DNS Name server IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"DNS primary server ip"}, "string"=>{"maxlen"=>"63"}, "enum"=>[{"value"=>"inherited"}]}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Primary DNS Name server IP address def primary prop_get('primary') end # Primary DNS Name server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS Name server IP address def secondary prop_get('secondary') end # Secondary DNS Name server IP address def secondary=(val) prop_set('secondary', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Dns def dns if @create_children @subclasses['dns'] ||= Dns.new(parent_instance: self, create_children: @create_children) else Dns.new(parent_instance: self) end end class MfaServerProfile < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-server-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MfaConfig < XML::ConfigClass def has_multiple_values? true end def _section :'mfa-config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/auth/mfa/entry[@name='$vnd']/content/entry/@name"]}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"255"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaConfig def mfa_config if @create_children @subclasses['mfa-config'] ||= MfaConfig.new(parent_instance: self, create_children: @create_children) else MfaConfig.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ ._-]+$", "help-string"=>"MFA Server Profile Name"}, "mfa-vendor-type"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"128", "help-string"=>"Vendor and product type", "autocomplete"=>"yes", "memberof"=>["##/predefined/auth/mfa/entry/@name"]}, "mfa-cert-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Certificate profile for verifying the MFA Vendor", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # MFA Server Profile Name def name prop_get('@name') end # Vendor and product type def mfa_vendor_type prop_get('mfa-vendor-type') end # Vendor and product type def mfa_vendor_type=(val) prop_set('mfa-vendor-type', val) end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile prop_get('mfa-cert-profile') end # Certificate profile for verifying the MFA Vendor def mfa_cert_profile=(val) prop_set('mfa-cert-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MfaServerProfile def mfa_server_profile if @create_children @subclasses['mfa-server-profile'] ||= MfaServerProfile.new(parent_instance: self, create_children: @create_children) else MfaServerProfile.new(parent_instance: self) end end @props={} end # class ServerProfile__9 def server_profile__9 @subclasses['server-profile__9'] ||= ServerProfile__9.new(parent_instance: self, create_children: @create_children) end class DnsProxy < XML::ConfigClass def has_multiple_values? true end def _section :'dns-proxy' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Interface < XML::ConfigClass def has_multiple_values? true end def _section :'interface' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Interface name", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/import/network/interface/member", "#myentry(vsys)/import/network/interface/member"]}} # Interface name def member prop_get('member') end # Interface name def member=(val) prop_set('member', val) end end # class Interface def interface if @create_children @subclasses['interface'] ||= Interface.new(parent_instance: self, create_children: @create_children) else Interface.new(parent_instance: self) end end class DomainServers < XML::ConfigClass def has_multiple_values? true end def _section :'domain-servers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class DomainName < XML::ConfigClass def has_multiple_values? true end def _section :'domain-name' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[a-zA-Z0-9_\\.\\*\\-]+$", "maxlen"=>"128", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def member prop_get('member') end # Dotted domain name with optional wildcards def member=(val) prop_set('member', val) end end # class DomainName def domain_name if @create_children @subclasses['domain-name'] ||= DomainName.new(parent_instance: self, create_children: @create_children) else DomainName.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "cacheable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching of domains resolved by this mapping"}, "server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"DNS server object", "autocomplete"=>"yes", "memberof"=>["#myentry(vsys)/server-profile/dns/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Turn on caching of domains resolved by this mapping def cacheable prop_get('cacheable') end # Turn on caching of domains resolved by this mapping def cacheable=(val) prop_set('cacheable', val) end # DNS server object def server_profile prop_get('server-profile') end # DNS server object def server_profile=(val) prop_set('server-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DomainServers def domain_servers if @create_children @subclasses['domain-servers'] ||= DomainServers.new(parent_instance: self, create_children: @create_children) else DomainServers.new(parent_instance: self) end end class Cache < ConfigClass def has_multiple_values? false end def _section :'cache' end class MaxTtl < ConfigClass def has_multiple_values? false end def _section :'max-ttl' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable max ttl for this DNS object"}, "time-to-live"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"86400", "help-string"=>"Time in seconds after which entry is cleared"}} # Enable max ttl for this DNS object def enabled prop_get('enabled') end # Enable max ttl for this DNS object def enabled=(val) prop_set('enabled', val) end # Time in seconds after which entry is cleared def time_to_live prop_get('time-to-live') end # Time in seconds after which entry is cleared def time_to_live=(val) prop_set('time-to-live', val) end end # class MaxTtl def max_ttl @subclasses['max-ttl'] ||= MaxTtl.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Turn on caching for this DNS object"}, "cache-edns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Cache EDNS UDP response"}} # Turn on caching for this DNS object def enabled prop_get('enabled') end # Turn on caching for this DNS object def enabled=(val) prop_set('enabled', val) end # Cache EDNS UDP response def cache_edns prop_get('cache-edns') end # Cache EDNS UDP response def cache_edns=(val) prop_set('cache-edns', val) end end # class Cache def cache @subclasses['cache'] ||= Cache.new(parent_instance: self, create_children: @create_children) end class StaticEntries < XML::ConfigClass def has_multiple_values? true end def _section :'static-entries' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Address < XML::ConfigClass def has_multiple_values? true end def _section :'address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Resolved IP address", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # Resolved IP address def member prop_get('member') end # Resolved IP address def member=(val) prop_set('member', val) end end # class Address def address if @create_children @subclasses['address'] ||= Address.new(parent_instance: self, create_children: @create_children) else Address.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "domain"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"Fully qualified domain name for specified IP address"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Fully qualified domain name for specified IP address def domain prop_get('domain') end # Fully qualified domain name for specified IP address def domain=(val) prop_set('domain', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class StaticEntries def static_entries if @create_children @subclasses['static-entries'] ||= StaticEntries.new(parent_instance: self, create_children: @create_children) else StaticEntries.new(parent_instance: self) end end class TcpQueries < ConfigClass def has_multiple_values? false end def _section :'tcp-queries' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Turn on forwarding of TCP DNS queries"}, "max-pending-requests"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"64", "max"=>"256", "default"=>"64", "help-string"=>"Upper limit on number of concurrent TCP DNS requests"}} # Turn on forwarding of TCP DNS queries def enabled prop_get('enabled') end # Turn on forwarding of TCP DNS queries def enabled=(val) prop_set('enabled', val) end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests prop_get('max-pending-requests') end # Upper limit on number of concurrent TCP DNS requests def max_pending_requests=(val) prop_set('max-pending-requests', val) end end # class TcpQueries def tcp_queries @subclasses['tcp-queries'] ||= TcpQueries.new(parent_instance: self, create_children: @create_children) end class UdpQueries < ConfigClass def has_multiple_values? false end def _section :'udp-queries' end class Retries < ConfigClass def has_multiple_values? false end def _section :'retries' end @props={"interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"2", "help-string"=>"Time in seconds for another request to be sent"}, "attempts"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30", "default"=>"5", "help-string"=>"Maximum number of retries before trying next name server"}} # Time in seconds for another request to be sent def interval prop_get('interval') end # Time in seconds for another request to be sent def interval=(val) prop_set('interval', val) end # Maximum number of retries before trying next name server def attempts prop_get('attempts') end # Maximum number of retries before trying next name server def attempts=(val) prop_set('attempts', val) end end # class Retries def retries @subclasses['retries'] ||= Retries.new(parent_instance: self, create_children: @create_children) end @props={} end # class UdpQueries def udp_queries @subclasses['udp-queries'] ||= UdpQueries.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"no", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=> "Enable or disable processing of DNS requests on interface(s) on this object"}, "server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"DNS server object", "autocomplete"=>"yes", "memberof"=>["#myentry(vsys)/server-profile/dns/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled prop_get('enabled') end # Enable or disable processing of DNS requests on interface(s) on this object def enabled=(val) prop_set('enabled', val) end # DNS server object def server_profile prop_get('server-profile') end # DNS server object def server_profile=(val) prop_set('server-profile', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DnsProxy def dns_proxy if @create_children @subclasses['dns-proxy'] ||= DnsProxy.new(parent_instance: self, create_children: @create_children) else DnsProxy.new(parent_instance: self) end end class LogSettings__11 < ConfigClass def has_multiple_values? false end def _section :'log-settings__11' end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/snmptrap/entry[version]/@name", "#myentry(vsys)/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/email/entry[server]/@name", "#myentry(vsys)/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/syslog/entry[server]/@name", "#myentry(vsys)/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "#myentry(vsys)/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Integration < ConfigClass def has_multiple_values? false end def _section :'integration' end @props={"action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Azure-Security-Center-Integration", "enum"=> [{"value"=>"Azure-Security-Center-Integration", "help-string"=>"Azure Security Center Integration"}]}} def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Integration def integration @subclasses['integration'] ||= Integration.new(parent_instance: self, create_children: @create_children) end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Panorama < ConfigClass def has_multiple_values? false end def _section :'panorama' end @props={} end # class Panorama def panorama @subclasses['panorama'] ||= Panorama.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/log-settings/http/entry[tag-registration='yes']/@name", "#myentry(vsys)/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SMTP gateway to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$|^\\$([a-zA-Z0-9._-])+$", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of SYSLOG server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "loose-membership"=>"yes", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings__11 def log_settings__11 @subclasses['log-settings__11'] ||= LogSettings__11.new(parent_instance: self, create_children: @create_children) end class Certificate < XML::ConfigClass def has_multiple_values? true end def _section :'certificate' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "common-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "algorithm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "ca"=> {"node-type"=>"element", "type"=>"bool", "internal"=>"yes", "optional"=>"yes"}, "not-valid-after"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "not-valid-before"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "expiry-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}, "subject"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "subject-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "issuer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "issuer-hash"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}, "private-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"16384", "encrypt"=>"yes", "double-encrypt"=>"yes"}, "private-key-on-hsm"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "status"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"valid", "enum"=>[{"value"=>"valid"}, {"value"=>"revoked"}]}, "revoke-date-epoch"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[0-9]*$"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def common_name prop_get('common-name') end def common_name=(val) prop_set('common-name', val) end def algorithm prop_get('algorithm') end def algorithm=(val) prop_set('algorithm', val) end def ca prop_get('ca') end def ca=(val) prop_set('ca', val) end def not_valid_after prop_get('not-valid-after') end def not_valid_after=(val) prop_set('not-valid-after', val) end def not_valid_before prop_get('not-valid-before') end def not_valid_before=(val) prop_set('not-valid-before', val) end def expiry_epoch prop_get('expiry-epoch') end def expiry_epoch=(val) prop_set('expiry-epoch', val) end def subject prop_get('subject') end def subject=(val) prop_set('subject', val) end def subject_hash prop_get('subject-hash') end def subject_hash=(val) prop_set('subject-hash', val) end def issuer prop_get('issuer') end def issuer=(val) prop_set('issuer', val) end def issuer_hash prop_get('issuer-hash') end def issuer_hash=(val) prop_set('issuer-hash', val) end def private_key prop_get('private-key') end def private_key=(val) prop_set('private-key', val) end def private_key_on_hsm prop_get('private-key-on-hsm') end def private_key_on_hsm=(val) prop_set('private-key-on-hsm', val) end def status prop_get('status') end def status=(val) prop_set('status', val) end def revoke_date_epoch prop_get('revoke-date-epoch') end def revoke_date_epoch=(val) prop_set('revoke-date-epoch', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Certificate def certificate if @create_children @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) else Certificate.new(parent_instance: self) end end class SslTlsServiceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-tls-service-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ProtocolSettings < ConfigClass def has_multiple_values? false end def _section :'protocol-settings' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4__7"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4__7 prop_get('enc-algo-rc4__7') end # Allow algorithm RC4 def enc_algo_rc4__7=(val) prop_set('enc-algo-rc4__7', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class ProtocolSettings def protocol_settings @subclasses['protocol-settings'] ||= ProtocolSettings.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"127", "regex"=>".*", "help-string"=>"Profile name"}, "certificate"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"SSL certificate file name", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # Profile name def name prop_get('@name') end # SSL certificate file name def certificate prop_get('certificate') end # SSL certificate file name def certificate=(val) prop_set('certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslTlsServiceProfile def ssl_tls_service_profile if @create_children @subclasses['ssl-tls-service-profile'] ||= SslTlsServiceProfile.new(parent_instance: self, create_children: @create_children) else SslTlsServiceProfile.new(parent_instance: self) end end class ResponsePage__14 < ConfigClass def has_multiple_values? false end def _section :'response-page__14' end class GlobalProtectPortalCustomLoginPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-login-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomLoginPage def global_protect_portal_custom_login_page if @create_children @subclasses['global-protect-portal-custom-login-page'] ||= GlobalProtectPortalCustomLoginPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomLoginPage.new(parent_instance: self) end end class GlobalProtectPortalCustomHomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-home-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHomePage def global_protect_portal_custom_home_page if @create_children @subclasses['global-protect-portal-custom-home-page'] ||= GlobalProtectPortalCustomHomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHomePage.new(parent_instance: self) end end class GlobalProtectPortalCustomHelpPage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-help-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomHelpPage def global_protect_portal_custom_help_page if @create_children @subclasses['global-protect-portal-custom-help-page'] ||= GlobalProtectPortalCustomHelpPage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomHelpPage.new(parent_instance: self) end end class GlobalProtectPortalCustomWelcomePage < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal-custom-welcome-page' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"174762"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def page prop_get('page') end def page=(val) prop_set('page', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortalCustomWelcomePage def global_protect_portal_custom_welcome_page if @create_children @subclasses['global-protect-portal-custom-welcome-page'] ||= GlobalProtectPortalCustomWelcomePage.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortalCustomWelcomePage.new(parent_instance: self) end end @props={"application-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "captive-portal-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "file-block-continue-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "file-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "ssl-cert-status-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "ssl-optout-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "url-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "url-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "credential-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "credential-coach-text"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "virus-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "data-filter-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "safe-search-block-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "saml-auth-internal-error-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}, "mfa-login-page"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"21845", "tlo"=>"yes", "in-tpl"=>"yes"}} def application_block_page prop_get('application-block-page') end def application_block_page=(val) prop_set('application-block-page', val) end def captive_portal_text prop_get('captive-portal-text') end def captive_portal_text=(val) prop_set('captive-portal-text', val) end def file_block_continue_page prop_get('file-block-continue-page') end def file_block_continue_page=(val) prop_set('file-block-continue-page', val) end def file_block_page prop_get('file-block-page') end def file_block_page=(val) prop_set('file-block-page', val) end def ssl_cert_status_page prop_get('ssl-cert-status-page') end def ssl_cert_status_page=(val) prop_set('ssl-cert-status-page', val) end def ssl_optout_text prop_get('ssl-optout-text') end def ssl_optout_text=(val) prop_set('ssl-optout-text', val) end def url_block_page prop_get('url-block-page') end def url_block_page=(val) prop_set('url-block-page', val) end def url_coach_text prop_get('url-coach-text') end def url_coach_text=(val) prop_set('url-coach-text', val) end def credential_block_page prop_get('credential-block-page') end def credential_block_page=(val) prop_set('credential-block-page', val) end def credential_coach_text prop_get('credential-coach-text') end def credential_coach_text=(val) prop_set('credential-coach-text', val) end def virus_block_page prop_get('virus-block-page') end def virus_block_page=(val) prop_set('virus-block-page', val) end def data_filter_block_page prop_get('data-filter-block-page') end def data_filter_block_page=(val) prop_set('data-filter-block-page', val) end def safe_search_block_page prop_get('safe-search-block-page') end def safe_search_block_page=(val) prop_set('safe-search-block-page', val) end def saml_auth_internal_error_page prop_get('saml-auth-internal-error-page') end def saml_auth_internal_error_page=(val) prop_set('saml-auth-internal-error-page', val) end def mfa_login_page prop_get('mfa-login-page') end def mfa_login_page=(val) prop_set('mfa-login-page', val) end end # class ResponsePage__14 def response_page__14 @subclasses['response-page__14'] ||= ResponsePage__14.new(parent_instance: self, create_children: @create_children) end class LocalUserDatabase__15 < ConfigClass def has_multiple_values? false end def _section :'local-user-database__15' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"User name"}, "phash"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}, "disabled"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} # User name def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end class UserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'user-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"User name", "autocomplete"=>"yes", "memberof"=>["#local-user-database/user/entry/@name"]}} # User name def member prop_get('member') end # User name def member=(val) prop_set('member', val) end end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"Group name"}} # Group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class UserGroup def user_group if @create_children @subclasses['user-group'] ||= UserGroup.new(parent_instance: self, create_children: @create_children) else UserGroup.new(parent_instance: self) end end @props={} end # class LocalUserDatabase__15 def local_user_database__15 @subclasses['local-user-database__15'] ||= LocalUserDatabase__15.new(parent_instance: self, create_children: @create_children) end class SslDecrypt__16 < ConfigClass def has_multiple_values? false end def _section :'ssl-decrypt__16' end class ForwardTrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-trust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key or private-key-on-hsm='yes']/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][(private-key or private-key-on-hsm='yes') and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key or private-key-on-hsm='yes']/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardTrustCertificate def forward_trust_certificate @subclasses['forward-trust-certificate'] ||= ForwardTrustCertificate.new(parent_instance: self, create_children: @create_children) end class ForwardUntrustCertificate < ConfigClass def has_multiple_values? false end def _section :'forward-untrust-certificate' end @props={"rsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"RSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "ecdsa"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"ECDSA certificate", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # RSA certificate def rsa prop_get('rsa') end # RSA certificate def rsa=(val) prop_set('rsa', val) end # ECDSA certificate def ecdsa prop_get('ecdsa') end # ECDSA certificate def ecdsa=(val) prop_set('ecdsa', val) end end # class ForwardUntrustCertificate def forward_untrust_certificate @subclasses['forward-untrust-certificate'] ||= ForwardUntrustCertificate.new(parent_instance: self, create_children: @create_children) end class SslExcludeCert < XML::ConfigClass def has_multiple_values? true end def _section :'ssl-exclude-cert' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"SSL Decryption Exclusion entry name"}, "description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"512"}, "exclude"=>{"node-type"=>"element", "type"=>"bool"}} # SSL Decryption Exclusion entry name def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def exclude prop_get('exclude') end def exclude=(val) prop_set('exclude', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SslExcludeCert def ssl_exclude_cert if @create_children @subclasses['ssl-exclude-cert'] ||= SslExcludeCert.new(parent_instance: self, create_children: @create_children) else SslExcludeCert.new(parent_instance: self) end end class RootCaExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca-exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=>["##/predefined/trusted-root-ca/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCaExcludeList def root_ca_exclude_list if @create_children @subclasses['root-ca-exclude-list'] ||= RootCaExcludeList.new(parent_instance: self, create_children: @create_children) else RootCaExcludeList.new(parent_instance: self) end end class TrustedRootCA < XML::ConfigClass def has_multiple_values? true end def _section :'trusted-root-CA' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Trusted Root CA", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)]/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"]}} # Trusted Root CA def member prop_get('member') end # Trusted Root CA def member=(val) prop_set('member', val) end end # class TrustedRootCA def trusted_root_CA if @create_children @subclasses['trusted-root-CA'] ||= TrustedRootCA.new(parent_instance: self, create_children: @create_children) else TrustedRootCA.new(parent_instance: self) end end @props={} end # class SslDecrypt__16 def ssl_decrypt__16 @subclasses['ssl-decrypt__16'] ||= SslDecrypt__16.new(parent_instance: self, create_children: @create_children) end class OcspResponder < XML::ConfigClass def has_multiple_values? true end def _section :'ocsp-responder' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [:0-9a-zA-Z._-]"}, "host-name"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^([$:a-zA-Z0-9._-])+$", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # alphanumeric string [:0-9a-zA-Z._-] def name prop_get('@name') end def host_name prop_get('host-name') end def host_name=(val) prop_set('host-name', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class OcspResponder def ocsp_responder if @create_children @subclasses['ocsp-responder'] ||= OcspResponder.new(parent_instance: self, create_children: @create_children) else OcspResponder.new(parent_instance: self) end end class Scep < XML::ConfigClass def has_multiple_values? true end def _section :'scep' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ScepChallenge < XML::ConfigClass def has_multiple_values? true end def _section :'scep-challenge' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Dynamic < ConfigClass def has_multiple_values? false end def _section :'dynamic' end @props={"otp-server-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"URL to get the One-Time-Password", "uiHint-fieldLabel"=>"Server URL"}, "username"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Username to authenticate to the SCEP server for procuring OTP"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=> "Password to authenticate to the SCEP server for procuring OTP"}} # URL to get the One-Time-Password def otp_server_url prop_get('otp-server-url') end # URL to get the One-Time-Password def otp_server_url=(val) prop_set('otp-server-url', val) end # Username to authenticate to the SCEP server for procuring OTP def username prop_get('username') end # Username to authenticate to the SCEP server for procuring OTP def username=(val) prop_set('username', val) end # Password to authenticate to the SCEP server for procuring OTP def password prop_get('password') end # Password to authenticate to the SCEP server for procuring OTP def password=(val) prop_set('password', val) end end # class Dynamic def dynamic @subclasses['dynamic'] ||= Dynamic.new(parent_instance: self, create_children: @create_children) end @props={"fixed"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "regex"=>"[^']*", "helpstring"=>"Challenge to use for SCEP server on mobile clients"}} def fixed prop_get('fixed') end def fixed=(val) prop_set('fixed', val) end end # class ScepChallenge def scep_challenge if @create_children @subclasses['scep-challenge'] ||= ScepChallenge.new(parent_instance: self, create_children: @create_children) else ScepChallenge.new(parent_instance: self) end end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Rsa < ConfigClass def has_multiple_values? false end def _section :'rsa' end @props={"rsa-nbits"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-nbits-complete-handler", "help-string"=>"Length of the key", "autocomplete"=>"yes"}} # Length of the key def rsa_nbits prop_get('rsa-nbits') end # Length of the key def rsa_nbits=(val) prop_set('rsa-nbits', val) end end # class Rsa def rsa @subclasses['rsa'] ||= Rsa.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end class CertificateAttributes < XML::ConfigClass def has_multiple_values? true end def _section :'certificate-attributes' end @props={"rfc822name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"rfc822Name"}, "dnsname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"dNSName"}, "uniform-resource-identifier"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"uniformResourceIdentifier"}} # rfc822Name def rfc822name prop_get('rfc822name') end # rfc822Name def rfc822name=(val) prop_set('rfc822name', val) end # dNSName def dnsname prop_get('dnsname') end # dNSName def dnsname=(val) prop_set('dnsname', val) end # uniformResourceIdentifier def uniform_resource_identifier prop_get('uniform-resource-identifier') end # uniformResourceIdentifier def uniform_resource_identifier=(val) prop_set('uniform-resource-identifier', val) end end # class CertificateAttributes def certificate_attributes if @create_children @subclasses['certificate-attributes'] ||= CertificateAttributes.new(parent_instance: self, create_children: @create_children) else CertificateAttributes.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "scep-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^(http|https)://.+$", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"The base URL for the SCEP server"}, "scep-ca-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"SCEP Server CA Certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"]}, "scep-client-cert"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"1024", "optional"=>"yes", "help-string"=> "Client Certificate to use when connecting to SCEP Server over SSL", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "ca-identity-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Name of the SCEP server CA Identity"}, "subject"=> {"node-type"=>"element", "regex"=>"(.*)CN=(.*?)(.*)", "type"=>"string", "default"=>"CN=$USERNAME", "minlen"=>"0", "maxlen"=>"1024", "help-string"=>"Representation of a X.500 name"}, "digest"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"generate-cert-digest-complete-handler", "help-string"=>"Digest Algorithm for CSR", "autocomplete"=>"yes"}, "fingerprint"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"255", "help-string"=>"Hex String to use as a fingerprint"}, "use-as-digital-signature"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use as digital signature", "uiHint-fieldLabel"=>"Use as digital signature"}, "use-for-key-encipherment"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Use for key encipherment", "uiHint-fieldLabel"=>"Use for key encipherment"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The base URL for the SCEP server def scep_url prop_get('scep-url') end # The base URL for the SCEP server def scep_url=(val) prop_set('scep-url', val) end # SCEP Server CA Certificate def scep_ca_cert prop_get('scep-ca-cert') end # SCEP Server CA Certificate def scep_ca_cert=(val) prop_set('scep-ca-cert', val) end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert prop_get('scep-client-cert') end # Client Certificate to use when connecting to SCEP Server over SSL def scep_client_cert=(val) prop_set('scep-client-cert', val) end # Name of the SCEP server CA Identity def ca_identity_name prop_get('ca-identity-name') end # Name of the SCEP server CA Identity def ca_identity_name=(val) prop_set('ca-identity-name', val) end # Representation of a X.500 name def subject prop_get('subject') end # Representation of a X.500 name def subject=(val) prop_set('subject', val) end # Digest Algorithm for CSR def digest prop_get('digest') end # Digest Algorithm for CSR def digest=(val) prop_set('digest', val) end # Hex String to use as a fingerprint def fingerprint prop_get('fingerprint') end # Hex String to use as a fingerprint def fingerprint=(val) prop_set('fingerprint', val) end # Use as digital signature def use_as_digital_signature prop_get('use-as-digital-signature') end # Use as digital signature def use_as_digital_signature=(val) prop_set('use-as-digital-signature', val) end # Use for key encipherment def use_for_key_encipherment prop_get('use-for-key-encipherment') end # Use for key encipherment def use_for_key_encipherment=(val) prop_set('use-for-key-encipherment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Scep def scep if @create_children @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) else Scep.new(parent_instance: self) end end class UrlContentTypes < XML::ConfigClass def has_multiple_values? true end def _section :'url-content-types' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "loose-membership"=>"yes", "help-string"=>"content type string", "autocomplete"=>"yes", "memberof"=>[]}} # content type string def member prop_get('member') end # content type string def member=(val) prop_set('member', val) end end # class UrlContentTypes def url_content_types if @create_children @subclasses['url-content-types'] ||= UrlContentTypes.new(parent_instance: self, create_children: @create_children) else UrlContentTypes.new(parent_instance: self) end end class TsAgent < XML::ConfigClass def has_multiple_values? true end def _section :'ts-agent' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class IpList < XML::ConfigClass def has_multiple_values? true end def _section :'ip-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"terminal server alternative ips", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"host name"}}}} # terminal server alternative ips def member prop_get('member') end # terminal server alternative ips def member=(val) prop_set('member', val) end end # class IpList def ip_list if @create_children @subclasses['ip-list'] ||= IpList.new(parent_instance: self, create_children: @create_children) else IpList.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for pan agent.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"agent IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"5009", "help-string"=>"terminal server agent listening port"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or hostname for pan agent. def host prop_get('host') end # IP address or hostname for pan agent. def host=(val) prop_set('host', val) end # terminal server agent listening port def port prop_get('port') end # terminal server agent listening port def port=(val) prop_set('port', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TsAgent def ts_agent if @create_children @subclasses['ts-agent'] ||= TsAgent.new(parent_instance: self, create_children: @create_children) else TsAgent.new(parent_instance: self) end end class RedistributionAgent < XML::ConfigClass def has_multiple_values? true end def _section :'redistribution-agent' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class HostPort < ConfigClass def has_multiple_values? false end def _section :'host-port' end @props={"host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for redistribution agent.", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"agent IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "ldap-proxy"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"redistribution agent listening port"}, "collectorname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"collector name on peer panos"}, "secret"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"collector pre-shared key on peer panos"}} # IP address or hostname for redistribution agent. def host prop_get('host') end # IP address or hostname for redistribution agent. def host=(val) prop_set('host', val) end def ldap_proxy prop_get('ldap-proxy') end def ldap_proxy=(val) prop_set('ldap-proxy', val) end # redistribution agent listening port def port prop_get('port') end # redistribution agent listening port def port=(val) prop_set('port', val) end # collector name on peer panos def collectorname prop_get('collectorname') end # collector name on peer panos def collectorname=(val) prop_set('collectorname', val) end # collector pre-shared key on peer panos def secret prop_get('secret') end # collector pre-shared key on peer panos def secret=(val) prop_set('secret', val) end end # class HostPort def host_port @subclasses['host-port'] ||= HostPort.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "serial-number"=> {"node-type"=>"element", "type"=>"multiple", "complete-handler"=>"uid-agent-serial-completer", "optional"=>"yes", "help-string"=>"panorama or panorama2 or log collector serial number.", "autocomplete"=>"yes", "multi-types"=> {"string"=> {"minlen"=>"1", "maxlen"=>"63", "help-string"=>"Serial number."}}}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "ip-user-mappings"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "ip-tags"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "user-tags"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "hip"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "quarantine-list"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # panorama or panorama2 or log collector serial number. def serial_number prop_get('serial-number') end # panorama or panorama2 or log collector serial number. def serial_number=(val) prop_set('serial-number', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end def ip_user_mappings prop_get('ip-user-mappings') end def ip_user_mappings=(val) prop_set('ip-user-mappings', val) end def ip_tags prop_get('ip-tags') end def ip_tags=(val) prop_set('ip-tags', val) end def user_tags prop_get('user-tags') end def user_tags=(val) prop_set('user-tags', val) end def hip prop_get('hip') end def hip=(val) prop_set('hip', val) end def quarantine_list prop_get('quarantine-list') end def quarantine_list=(val) prop_set('quarantine-list', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RedistributionAgent def redistribution_agent if @create_children @subclasses['redistribution-agent'] ||= RedistributionAgent.new(parent_instance: self, create_children: @create_children) else RedistributionAgent.new(parent_instance: self) end end class IpuserIncludeExcludeList < ConfigClass def has_multiple_values? false end def _section :'ipuser-include-exclude-list' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"network address/prefix to include or exclude", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IpuserIncludeExcludeList def ipuser_include_exclude_list @subclasses['ipuser-include-exclude-list'] ||= IpuserIncludeExcludeList.new(parent_instance: self, create_children: @create_children) end class IptagIncludeExcludeList < ConfigClass def has_multiple_values? false end def _section :'iptag-include-exclude-list' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"network address/prefix to include or exclude", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IptagIncludeExcludeList def iptag_include_exclude_list @subclasses['iptag-include-exclude-list'] ||= IptagIncludeExcludeList.new(parent_instance: self, create_children: @create_children) end class RedistributionCollector < ConfigClass def has_multiple_values? false end def _section :'redistribution-collector' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end @props={"collectorname"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"collector name for data re-distribution"}, "secret"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"pre-shared key for data re-distribution"}} # collector name for data re-distribution def collectorname prop_get('collectorname') end # collector name for data re-distribution def collectorname=(val) prop_set('collectorname', val) end # pre-shared key for data re-distribution def secret prop_get('secret') end # pre-shared key for data re-distribution def secret=(val) prop_set('secret', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end @props={} end # class RedistributionCollector def redistribution_collector @subclasses['redistribution-collector'] ||= RedistributionCollector.new(parent_instance: self, create_children: @create_children) end class UserIdSslAuth < ConfigClass def has_multiple_values? false end def _section :'user-id-ssl-auth' end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class UserIdSslAuth def user_id_ssl_auth @subclasses['user-id-ssl-auth'] ||= UserIdSslAuth.new(parent_instance: self, create_children: @create_children) end class VmInfoSource < XML::ConfigClass def has_multiple_values? true end def _section :'vm-info-source' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AWSVPC < ConfigClass def has_multiple_values? false end def _section :'AWS-VPC' end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "source"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"255", "help-string"=> "IP address or name(example: ec2.amazonaws.com Default aws-region:us-east-1)", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "access-key-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"16", "maxlen"=>"32", "help-string"=>"AWS access key ID"}, "secret-access-key"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"AWS secret access key"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"60", "max"=>"1200", "default"=>"60", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}, "vpc-id"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"AWS VPC name or Id"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # IP address or name(example: ec2.amazonaws.com Default aws-region:us-east-1) def source prop_get('source') end # IP address or name(example: ec2.amazonaws.com Default aws-region:us-east-1) def source=(val) prop_set('source', val) end # AWS access key ID def access_key_id prop_get('access-key-id') end # AWS access key ID def access_key_id=(val) prop_set('access-key-id', val) end # AWS secret access key def secret_access_key prop_get('secret-access-key') end # AWS secret access key def secret_access_key=(val) prop_set('secret-access-key', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end # AWS VPC name or Id def vpc_id prop_get('vpc-id') end # AWS VPC name or Id def vpc_id=(val) prop_set('vpc-id', val) end end # class AWSVPC def AWS_VPC @subclasses['AWS-VPC'] ||= AWSVPC.new(parent_instance: self, create_children: @create_children) end class GoogleComputeEngine < ConfigClass def has_multiple_values? false end def _section :'Google-Compute-Engine' end class ServiceAuthType < XML::ConfigClass def has_multiple_values? true end def _section :'service-auth-type' end class ServiceInGce < ConfigClass def has_multiple_values? false end def _section :'service-in-gce' end @props={} end # class ServiceInGce def service_in_gce @subclasses['service-in-gce'] ||= ServiceInGce.new(parent_instance: self, create_children: @create_children) end class ServiceAccount < ConfigClass def has_multiple_values? false end def _section :'service-account' end @props={"service-account-cred"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"8192", "help-string"=>"GCE service account JSON file"}} # GCE service account JSON file def service_account_cred prop_get('service-account-cred') end # GCE service account JSON file def service_account_cred=(val) prop_set('service-account-cred', val) end end # class ServiceAccount def service_account @subclasses['service-account'] ||= ServiceAccount.new(parent_instance: self, create_children: @create_children) end @props={} end # class ServiceAuthType def service_auth_type if @create_children @subclasses['service-auth-type'] ||= ServiceAuthType.new(parent_instance: self, create_children: @create_children) else ServiceAuthType.new(parent_instance: self) end end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "project-id"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "help-string"=>"Google Compute Engine Project-ID"}, "zone-name"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"64", "help-string"=>"Google Compute Engine Project-Zone-Name"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"60", "max"=>"1200", "default"=>"60", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Google Compute Engine Project-ID def project_id prop_get('project-id') end # Google Compute Engine Project-ID def project_id=(val) prop_set('project-id', val) end # Google Compute Engine Project-Zone-Name def zone_name prop_get('zone-name') end # Google Compute Engine Project-Zone-Name def zone_name=(val) prop_set('zone-name', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end end # class GoogleComputeEngine def Google_Compute_Engine @subclasses['Google-Compute-Engine'] ||= GoogleComputeEngine.new(parent_instance: self, create_children: @create_children) end class VMwareESXi < ConfigClass def has_multiple_values? false end def _section :'VMware-ESXi' end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"443", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or source name for vm-info-source", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Source name"}}}, "username"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"vm-info-source login username"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"vm-info-source login password"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"5", "max"=>"600", "default"=>"5", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end # IP address or source name for vm-info-source def source prop_get('source') end # IP address or source name for vm-info-source def source=(val) prop_set('source', val) end # vm-info-source login username def username prop_get('username') end # vm-info-source login username def username=(val) prop_set('username', val) end # vm-info-source login password def password prop_get('password') end # vm-info-source login password def password=(val) prop_set('password', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end end # class VMwareESXi def VMware_ESXi @subclasses['VMware-ESXi'] ||= VMwareESXi.new(parent_instance: self, create_children: @create_children) end class VMwareVCenter < ConfigClass def has_multiple_values? false end def _section :'VMware-vCenter' end @props={"description"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255"}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"443", "optional"=>"yes"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "vm-info-timeout-enable"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"enable vm-info timeout when source is disconnected"}, "vm-info-timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"2", "max"=>"10", "default"=>"2", "optional"=>"yes", "help-string"=> "vm-info timeout value (in hour) when source is disconnected"}, "source"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or source name for vm-info-source", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes", "help-string"=>"IP address"}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Source name"}}}, "username"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"vm-info-source login username"}, "password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"vm-info-source login password"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"5", "max"=>"600", "default"=>"5", "optional"=>"yes", "help-string"=>"time interval (in sec) for updates"}} def description prop_get('description') end def description=(val) prop_set('description', val) end def port prop_get('port') end def port=(val) prop_set('port', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable prop_get('vm-info-timeout-enable') end # enable vm-info timeout when source is disconnected def vm_info_timeout_enable=(val) prop_set('vm-info-timeout-enable', val) end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout prop_get('vm-info-timeout') end # vm-info timeout value (in hour) when source is disconnected def vm_info_timeout=(val) prop_set('vm-info-timeout', val) end # IP address or source name for vm-info-source def source prop_get('source') end # IP address or source name for vm-info-source def source=(val) prop_set('source', val) end # vm-info-source login username def username prop_get('username') end # vm-info-source login username def username=(val) prop_set('username', val) end # vm-info-source login password def password prop_get('password') end # vm-info-source login password def password=(val) prop_set('password', val) end # time interval (in sec) for updates def update_interval prop_get('update-interval') end # time interval (in sec) for updates def update_interval=(val) prop_set('update-interval', val) end end # class VMwareVCenter def VMware_vCenter @subclasses['VMware-vCenter'] ||= VMwareVCenter.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class VmInfoSource def vm_info_source if @create_children @subclasses['vm-info-source'] ||= VmInfoSource.new(parent_instance: self, create_children: @create_children) else VmInfoSource.new(parent_instance: self) end end class GroupMapping < XML::ConfigClass def has_multiple_values? true end def _section :'group-mapping' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GroupObject < XML::ConfigClass def has_multiple_values? true end def _section :'group-object' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupObject def group_object if @create_children @subclasses['group-object'] ||= GroupObject.new(parent_instance: self, create_children: @create_children) else GroupObject.new(parent_instance: self) end end class GroupMember < XML::ConfigClass def has_multiple_values? true end def _section :'group-member' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupMember def group_member if @create_children @subclasses['group-member'] ||= GroupMember.new(parent_instance: self, create_children: @create_children) else GroupMember.new(parent_instance: self) end end class GroupName < XML::ConfigClass def has_multiple_values? true end def _section :'group-name' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupName def group_name if @create_children @subclasses['group-name'] ||= GroupName.new(parent_instance: self, create_children: @create_children) else GroupName.new(parent_instance: self) end end class UserObject < XML::ConfigClass def has_multiple_values? true end def _section :'user-object' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserObject def user_object if @create_children @subclasses['user-object'] ||= UserObject.new(parent_instance: self, create_children: @create_children) else UserObject.new(parent_instance: self) end end class UserName < XML::ConfigClass def has_multiple_values? true end def _section :'user-name' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserName def user_name if @create_children @subclasses['user-name'] ||= UserName.new(parent_instance: self, create_children: @create_children) else UserName.new(parent_instance: self) end end class UserEmail < XML::ConfigClass def has_multiple_values? true end def _section :'user-email' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class UserEmail def user_email if @create_children @subclasses['user-email'] ||= UserEmail.new(parent_instance: self, create_children: @create_children) else UserEmail.new(parent_instance: self) end end class GroupEmail < XML::ConfigClass def has_multiple_values? true end def _section :'group-email' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupEmail def group_email if @create_children @subclasses['group-email'] ||= GroupEmail.new(parent_instance: self, create_children: @create_children) else GroupEmail.new(parent_instance: self) end end class AlternateUserName1 < XML::ConfigClass def has_multiple_values? true end def _section :'alternate-user-name-1' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AlternateUserName1 def alternate_user_name_1 if @create_children @subclasses['alternate-user-name-1'] ||= AlternateUserName1.new(parent_instance: self, create_children: @create_children) else AlternateUserName1.new(parent_instance: self) end end class AlternateUserName2 < XML::ConfigClass def has_multiple_values? true end def _section :'alternate-user-name-2' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AlternateUserName2 def alternate_user_name_2 if @create_children @subclasses['alternate-user-name-2'] ||= AlternateUserName2.new(parent_instance: self, create_children: @create_children) else AlternateUserName2.new(parent_instance: self) end end class AlternateUserName3 < XML::ConfigClass def has_multiple_values? true end def _section :'alternate-user-name-3' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AlternateUserName3 def alternate_user_name_3 if @create_children @subclasses['alternate-user-name-3'] ||= AlternateUserName3.new(parent_instance: self, create_children: @create_children) else AlternateUserName3.new(parent_instance: self) end end class ContainerObject < XML::ConfigClass def has_multiple_values? true end def _section :'container-object' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"128"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ContainerObject def container_object if @create_children @subclasses['container-object'] ||= ContainerObject.new(parent_instance: self, create_children: @create_children) else ContainerObject.new(parent_instance: self) end end class LastModifyAttr < XML::ConfigClass def has_multiple_values? true end def _section :'last-modify-attr' end @props={"member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class LastModifyAttr def last_modify_attr if @create_children @subclasses['last-modify-attr'] ||= LastModifyAttr.new(parent_instance: self, create_children: @create_children) else LastModifyAttr.new(parent_instance: self) end end class GroupIncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'group-include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1023", "max-count"=>"640"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class GroupIncludeList def group_include_list if @create_children @subclasses['group-include-list'] ||= GroupIncludeList.new(parent_instance: self, create_children: @create_children) else GroupIncludeList.new(parent_instance: self) end end class CustomGroup < XML::ConfigClass def has_multiple_values? true end def _section :'custom-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "ldap-filter"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"ldap filter criteria"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # ldap filter criteria def ldap_filter prop_get('ldap-filter') end # ldap filter criteria def ldap_filter=(val) prop_set('ldap-filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class CustomGroup def custom_group if @create_children @subclasses['custom-group'] ||= CustomGroup.new(parent_instance: self, create_children: @create_children) else CustomGroup.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/ldap/entry/@name"]}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "use-ldap-for-serialno-check"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=> "Use LDAP for fetching device serial numbers (GlobalProtect only)"}, "use-modify-timestamp"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "limited-group-search"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes"}, "nested-group-level"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"20", "default"=>"10"}, "group-filter"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024", "help-string"=>"ldap search filter for group"}, "user-filter"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"1024", "help-string"=>"ldap search filter for user"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Domain name used for override"}, "update-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"60", "max"=>"86400", "help-string"=> "Interval (seconds) for updating group membership, default is 3600 seconds"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # LDAP server object def server_profile prop_get('server-profile') end # LDAP server object def server_profile=(val) prop_set('server-profile', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # Use LDAP for fetching device serial numbers (GlobalProtect only) def use_ldap_for_serialno_check prop_get('use-ldap-for-serialno-check') end # Use LDAP for fetching device serial numbers (GlobalProtect only) def use_ldap_for_serialno_check=(val) prop_set('use-ldap-for-serialno-check', val) end def use_modify_timestamp prop_get('use-modify-timestamp') end def use_modify_timestamp=(val) prop_set('use-modify-timestamp', val) end def limited_group_search prop_get('limited-group-search') end def limited_group_search=(val) prop_set('limited-group-search', val) end def nested_group_level prop_get('nested-group-level') end def nested_group_level=(val) prop_set('nested-group-level', val) end # ldap search filter for group def group_filter prop_get('group-filter') end # ldap search filter for group def group_filter=(val) prop_set('group-filter', val) end # ldap search filter for user def user_filter prop_get('user-filter') end # ldap search filter for user def user_filter=(val) prop_set('user-filter', val) end # Domain name used for override def domain prop_get('domain') end # Domain name used for override def domain=(val) prop_set('domain', val) end # Interval (seconds) for updating group membership, default is 3600 seconds def update_interval prop_get('update-interval') end # Interval (seconds) for updating group membership, default is 3600 seconds def update_interval=(val) prop_set('update-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GroupMapping def group_mapping if @create_children @subclasses['group-mapping'] ||= GroupMapping.new(parent_instance: self, create_children: @create_children) else GroupMapping.new(parent_instance: self) end end class CaptivePortal < ConfigClass def has_multiple_values? false end def _section :'captive-portal' end class Mode < XML::ConfigClass def has_multiple_values? true end def _section :'mode' end class Transparent < ConfigClass def has_multiple_values? false end def _section :'transparent' end @props={} end # class Transparent def transparent @subclasses['transparent'] ||= Transparent.new(parent_instance: self, create_children: @create_children) end class Redirect < ConfigClass def has_multiple_values? false end def _section :'redirect' end class SessionCookie < ConfigClass def has_multiple_values? false end def _section :'session-cookie' end @props={"enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"60", "max"=>"10080", "default"=>"1440", "help-string"=>"expiration timer (minutes)"}, "roaming"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"enable/disable ip roaming"}} def enable prop_get('enable') end def enable=(val) prop_set('enable', val) end # expiration timer (minutes) def timeout prop_get('timeout') end # expiration timer (minutes) def timeout=(val) prop_set('timeout', val) end # enable/disable ip roaming def roaming prop_get('roaming') end # enable/disable ip roaming def roaming=(val) prop_set('roaming', val) end end # class SessionCookie def session_cookie @subclasses['session-cookie'] ||= SessionCookie.new(parent_instance: self, create_children: @create_children) end @props={} end # class Redirect def redirect @subclasses['redirect'] ||= Redirect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode if @create_children @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) else Mode.new(parent_instance: self) end end @props={"enable-captive-portal"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "idle-timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"15", "help-string"=>"idle timer (minutes)"}, "timer"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"60", "help-string"=>"expiration timer (minutes)"}, "redirect-host"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"ip or host name for redirect for captive portal", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}, "gp-udp-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"4501", "help-string"=>"MFA notification port on GP client"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Authentication profile to use for authentication.", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} def enable_captive_portal prop_get('enable-captive-portal') end def enable_captive_portal=(val) prop_set('enable-captive-portal', val) end # idle timer (minutes) def idle_timer prop_get('idle-timer') end # idle timer (minutes) def idle_timer=(val) prop_set('idle-timer', val) end # expiration timer (minutes) def timer prop_get('timer') end # expiration timer (minutes) def timer=(val) prop_set('timer', val) end # ip or host name for redirect for captive portal def redirect_host prop_get('redirect-host') end # ip or host name for redirect for captive portal def redirect_host=(val) prop_set('redirect-host', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # MFA notification port on GP client def gp_udp_port prop_get('gp-udp-port') end # MFA notification port on GP client def gp_udp_port=(val) prop_set('gp-udp-port', val) end # Authentication profile to use for authentication. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for authentication. def authentication_profile=(val) prop_set('authentication-profile', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class CaptivePortal def captive_portal @subclasses['captive-portal'] ||= CaptivePortal.new(parent_instance: self, create_children: @create_children) end class UserIdCollector < ConfigClass def has_multiple_values? false end def _section :'user-id-collector' end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end @props={"wmi-account"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"3", "maxlen"=>"255", "help-string"=>"AD account name for wmi query, e.g. domain\\username"}, "wmi-password"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "encrypt"=>"yes", "maxlen"=>"255", "help-string"=>"password for AD account for wmi query"}, "domain-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"256", "help-string"=>"DNS Domain Name"}, "server-profile__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"Kerberos server object", "prune-on"=>"fips-mode,cc-only-mode", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/kerberos/entry/@name", "#myentry(vsys)/server-profile/kerberos/entry/@name"]}, "enable-security-log"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "security-log-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"2", "help-string"=>"security log monitor frequency in seconds"}, "enable-session"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "session-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"10", "help-string"=>"windows server session monitor frequency in seconds"}, "edirectory-query-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"3600", "default"=>"30", "help-string"=>"server session read frequency in seconds"}, "enable-probing"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "client-probing-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"20", "help-string"=>"wmi client probing frequency in minutes"}, "enable-mapping-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "ip-user-mapping-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"1440", "default"=>"45", "help-string"=>"ip user mapping timeout in minutes"}, "enable-user-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "syslog-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Syslog service ssl-tls profile ", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}} # AD account name for wmi query, e.g. domain\username def wmi_account prop_get('wmi-account') end # AD account name for wmi query, e.g. domain\username def wmi_account=(val) prop_set('wmi-account', val) end # password for AD account for wmi query def wmi_password prop_get('wmi-password') end # password for AD account for wmi query def wmi_password=(val) prop_set('wmi-password', val) end # DNS Domain Name def domain_name prop_get('domain-name') end # DNS Domain Name def domain_name=(val) prop_set('domain-name', val) end # Kerberos server object def server_profile__4 prop_get('server-profile__4') end # Kerberos server object def server_profile__4=(val) prop_set('server-profile__4', val) end def enable_security_log prop_get('enable-security-log') end def enable_security_log=(val) prop_set('enable-security-log', val) end # security log monitor frequency in seconds def security_log_interval prop_get('security-log-interval') end # security log monitor frequency in seconds def security_log_interval=(val) prop_set('security-log-interval', val) end def enable_session prop_get('enable-session') end def enable_session=(val) prop_set('enable-session', val) end # windows server session monitor frequency in seconds def session_interval prop_get('session-interval') end # windows server session monitor frequency in seconds def session_interval=(val) prop_set('session-interval', val) end # server session read frequency in seconds def edirectory_query_interval prop_get('edirectory-query-interval') end # server session read frequency in seconds def edirectory_query_interval=(val) prop_set('edirectory-query-interval', val) end def enable_probing prop_get('enable-probing') end def enable_probing=(val) prop_set('enable-probing', val) end # wmi client probing frequency in minutes def client_probing_interval prop_get('client-probing-interval') end # wmi client probing frequency in minutes def client_probing_interval=(val) prop_set('client-probing-interval', val) end def enable_mapping_timeout prop_get('enable-mapping-timeout') end def enable_mapping_timeout=(val) prop_set('enable-mapping-timeout', val) end # ip user mapping timeout in minutes def ip_user_mapping_timeout prop_get('ip-user-mapping-timeout') end # ip user mapping timeout in minutes def ip_user_mapping_timeout=(val) prop_set('ip-user-mapping-timeout', val) end def enable_user_match prop_get('enable-user-match') end def enable_user_match=(val) prop_set('enable-user-match', val) end # Syslog service ssl-tls profile def syslog_service_profile prop_get('syslog-service-profile') end # Syslog service ssl-tls profile def syslog_service_profile=(val) prop_set('syslog-service-profile', val) end end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class SyslogParseProfile < XML::ConfigClass def has_multiple_values? true end def _section :'syslog-parse-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegexIdentifier < ConfigClass def has_multiple_values? false end def _section :'regex-identifier' end @props={"event-regex"=> {"node-type"=>"element", "help-string"=>"regex to identify authentication message", "type"=>"string", "maxlen"=>"1024"}, "username-regex"=> {"node-type"=>"element", "help-string"=>"regex to identify user name", "type"=>"string", "maxlen"=>"1024"}, "address-regex"=> {"node-type"=>"element", "help-string"=>"regex to identify address", "type"=>"string", "maxlen"=>"1024"}} # regex to identify authentication message def event_regex prop_get('event-regex') end # regex to identify authentication message def event_regex=(val) prop_set('event-regex', val) end # regex to identify user name def username_regex prop_get('username-regex') end # regex to identify user name def username_regex=(val) prop_set('username-regex', val) end # regex to identify address def address_regex prop_get('address-regex') end # regex to identify address def address_regex=(val) prop_set('address-regex', val) end end # class RegexIdentifier def regex_identifier @subclasses['regex-identifier'] ||= RegexIdentifier.new(parent_instance: self, create_children: @create_children) end class FieldIdentifier < ConfigClass def has_multiple_values? false end def _section :'field-identifier' end @props={"event-string"=> {"node-type"=>"element", "help-string"=>"string to identify authentication message", "type"=>"string", "maxlen"=>"1024"}, "username-prefix"=> {"node-type"=>"element", "help-string"=>"string to identify user name", "type"=>"string", "maxlen"=>"1024"}, "username-delimiter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024"}, "address-prefix"=> {"node-type"=>"element", "help-string"=>"string to identify address", "type"=>"string", "maxlen"=>"1024"}, "address-delimiter"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"1024"}, "address-per-log"=> {"node-type"=>"element", "help-string"=>"Maximum number of addresses per log", "type"=>"rangedint", "min"=>"1", "max"=>"3", "default"=>"1", "optional"=>"yes"}} # string to identify authentication message def event_string prop_get('event-string') end # string to identify authentication message def event_string=(val) prop_set('event-string', val) end # string to identify user name def username_prefix prop_get('username-prefix') end # string to identify user name def username_prefix=(val) prop_set('username-prefix', val) end def username_delimiter prop_get('username-delimiter') end def username_delimiter=(val) prop_set('username-delimiter', val) end # string to identify address def address_prefix prop_get('address-prefix') end # string to identify address def address_prefix=(val) prop_set('address-prefix', val) end def address_delimiter prop_get('address-delimiter') end def address_delimiter=(val) prop_set('address-delimiter', val) end # Maximum number of addresses per log def address_per_log prop_get('address-per-log') end # Maximum number of addresses per log def address_per_log=(val) prop_set('address-per-log', val) end end # class FieldIdentifier def field_identifier @subclasses['field-identifier'] ||= FieldIdentifier.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z._-]{1}[ 0-9a-zA-Z._-]*$"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255"}} # alphanumeric string begin with non-digit: [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SyslogParseProfile def syslog_parse_profile if @create_children @subclasses['syslog-parse-profile'] ||= SyslogParseProfile.new(parent_instance: self, create_children: @create_children) else SyslogParseProfile.new(parent_instance: self) end end class ServerMonitor < XML::ConfigClass def has_multiple_values? true end def _section :'server-monitor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ActiveDirectory < ConfigClass def has_multiple_values? false end def _section :'active-directory' end @props={"type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"WMI", "help-string"=>"Transport protocol", "enum"=> [{"value"=>"WMI", "help-string"=>"Connected to monitored server over MSRPC"}, {"value"=>"WinRM-HTTP", "help-string"=> "Connected to monitored server with encrypted HTTP payload", "prune-on"=>"fips-mode,cc-only-mode"}, {"value"=>"WinRM-HTTPS", "help-string"=>"Connected to monitored server over HTTPS", "prune-on"=>"fips-mode,cc-only-mode"}]}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}} # Transport protocol def type prop_get('type') end # Transport protocol def type=(val) prop_set('type', val) end # IP address or hostname for the server def host prop_get('host') end # IP address or hostname for the server def host=(val) prop_set('host', val) end end # class ActiveDirectory def active_directory @subclasses['active-directory'] ||= ActiveDirectory.new(parent_instance: self, create_children: @create_children) end class Exchange < ConfigClass def has_multiple_values? false end def _section :'exchange' end @props={"type"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"WMI", "help-string"=>"Transport protocol", "enum"=> [{"value"=>"WMI", "help-string"=>"Connected to monitored server over MSRPC"}, {"value"=>"WinRM-HTTP", "help-string"=> "Connected to monitored server with encrypted HTTP payload"}, {"value"=>"WinRM-HTTPS", "help-string"=>"Connected to monitored server over HTTPS"}]}, "host"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or hostname for the server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"], "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([$a-zA-Z0-9./_-])+$", "loose-membership"=>"yes", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}} # Transport protocol def type prop_get('type') end # Transport protocol def type=(val) prop_set('type', val) end # IP address or hostname for the server def host prop_get('host') end # IP address or hostname for the server def host=(val) prop_set('host', val) end end # class Exchange def exchange @subclasses['exchange'] ||= Exchange.new(parent_instance: self, create_children: @create_children) end class EDirectory < ConfigClass def has_multiple_values? false end def _section :'e-directory' end @props={"server-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"LDAP server object", "autocomplete"=>"yes", "memberof"=> ["#config/shared/server-profile/ldap/entry[not(admin-use-only='yes')]/@name", "#myentry(vsys)/server-profile/ldap/entry/@name"]}} # LDAP server object def server_profile prop_get('server-profile') end # LDAP server object def server_profile=(val) prop_set('server-profile', val) end end # class EDirectory def e_directory @subclasses['e-directory'] ||= EDirectory.new(parent_instance: self, create_children: @create_children) end class Syslog < ConfigClass def has_multiple_values? false end def _section :'syslog' end class SyslogParseProfile < XML::ConfigClass def has_multiple_values? true end def _section :'syslog-parse-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"user-id syslog message parse profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/user-id-collector/syslog-parse-profile/entry/@name", "##/predefined/user-id-collector/syslog-parse-profile/entry/@name"]}, "event-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"login", "enum"=> [{"value"=>"login", "help-string"=>"Login Event"}, {"value"=>"logout", "help-string"=>"Logout Event"}]}} # user-id syslog message parse profile def name prop_get('@name') end def event_type prop_get('event-type') end def event_type=(val) prop_set('event-type', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SyslogParseProfile def syslog_parse_profile if @create_children @subclasses['syslog-parse-profile'] ||= SyslogParseProfile.new(parent_instance: self, create_children: @create_children) else SyslogParseProfile.new(parent_instance: self) end end @props={"address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address for the syslog server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "connection-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ssl", "enum"=> [{"value"=>"udp", "help-string"=>"Receive syslog via UDP", "prune-on"=>"fips-mode"}, {"value"=>"ssl", "help-string"=>"Receive syslog via SSL"}]}, "default-domain-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63"}} # IP address for the syslog server def address prop_get('address') end # IP address for the syslog server def address=(val) prop_set('address', val) end def connection_type prop_get('connection-type') end def connection_type=(val) prop_set('connection-type', val) end def default_domain_name prop_get('default-domain-name') end def default_domain_name=(val) prop_set('default-domain-name', val) end end # class Syslog def syslog @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"255", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerMonitor def server_monitor if @create_children @subclasses['server-monitor'] ||= ServerMonitor.new(parent_instance: self, create_children: @create_children) else ServerMonitor.new(parent_instance: self) end end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "discovery"=> {"node-type"=>"element", "type"=>"enum", "default"=>"include", "help-string"=>"default is include", "enum"=> [{"value"=>"include", "help-string"=>"Include"}, {"value"=>"exclude", "help-string"=>"Exclude"}]}, "network-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"network address/prefix to include or exclude", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # default is include def discovery prop_get('discovery') end # default is include def discovery=(val) prop_set('discovery', val) end # network address/prefix to include or exclude def network_address prop_get('network-address') end # network address/prefix to include or exclude def network_address=(val) prop_set('network-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end class IncludeExcludeNetworkSequence < ConfigClass def has_multiple_values? false end def _section :'include-exclude-network-sequence' end class IncludeExcludeNetwork < XML::ConfigClass def has_multiple_values? true end def _section :'include-exclude-network' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/user-id-collector/include-exclude-network/entry/@name", "#myentry(vsys)/user-id-collector/include-exclude-network/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeExcludeNetwork def include_exclude_network if @create_children @subclasses['include-exclude-network'] ||= IncludeExcludeNetwork.new(parent_instance: self, create_children: @create_children) else IncludeExcludeNetwork.new(parent_instance: self) end end @props={} end # class IncludeExcludeNetworkSequence def include_exclude_network_sequence @subclasses['include-exclude-network-sequence'] ||= IncludeExcludeNetworkSequence.new(parent_instance: self, create_children: @create_children) end class IgnoreUser < XML::ConfigClass def has_multiple_values? true end def _section :'ignore-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "max-count"=>"5000", "multi-types"=>{"string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IgnoreUser def ignore_user if @create_children @subclasses['ignore-user'] ||= IgnoreUser.new(parent_instance: self, create_children: @create_children) else IgnoreUser.new(parent_instance: self) end end @props={} end # class UserIdCollector def user_id_collector @subclasses['user-id-collector'] ||= UserIdCollector.new(parent_instance: self, create_children: @create_children) end class UrlAdminOverride < ConfigClass def has_multiple_values? false end def _section :'url-admin-override' end class Mode < XML::ConfigClass def has_multiple_values? true end def _section :'mode' end class Transparent < ConfigClass def has_multiple_values? false end def _section :'transparent' end @props={} end # class Transparent def transparent @subclasses['transparent'] ||= Transparent.new(parent_instance: self, create_children: @create_children) end class Redirect < ConfigClass def has_multiple_values? false end def _section :'redirect' end @props={"address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"set ip or host name for url admin override.", "multi-types"=> {"ipspec"=>{}, "string"=> {"regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Host name."}}}} # set ip or host name for url admin override. def address prop_get('address') end # set ip or host name for url admin override. def address=(val) prop_set('address', val) end end # class Redirect def redirect @subclasses['redirect'] ||= Redirect.new(parent_instance: self, create_children: @create_children) end @props={} end # class Mode def mode if @create_children @subclasses['mode'] ||= Mode.new(parent_instance: self, create_children: @create_children) else Mode.new(parent_instance: self) end end @props={"password"=> {"node-type"=>"element", "type"=>"string", "encrypt"=>"yes", "maxlen"=>"64", "help-string"=>"password for url admin override"}, "ssl-tls-service-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}} # password for url admin override def password prop_get('password') end # password for url admin override def password=(val) prop_set('password', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end end # class UrlAdminOverride def url_admin_override @subclasses['url-admin-override'] ||= UrlAdminOverride.new(parent_instance: self, create_children: @create_children) end class Zone < XML::ConfigClass def has_multiple_values? true end def _section :'zone' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Network < ConfigClass def has_multiple_values? false end def _section :'network' end class Tap < XML::ConfigClass def has_multiple_values? true end def _section :'tap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[tap]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tap def tap if @create_children @subclasses['tap'] ||= Tap.new(parent_instance: self, create_children: @create_children) else Tap.new(parent_instance: self) end end class VirtualWire < XML::ConfigClass def has_multiple_values? true end def _section :'virtual-wire' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/virtual-wire/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[virtual-wire]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[virtual-wire]/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry/virtual-wire/units/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class VirtualWire def virtual_wire if @create_children @subclasses['virtual-wire'] ||= VirtualWire.new(parent_instance: self, create_children: @create_children) else VirtualWire.new(parent_instance: self) end end class Layer2 < XML::ConfigClass def has_multiple_values? true end def _section :'layer2' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/ethernet/entry[layer2]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer2/units/entry/@name|#myentry(devices)/network/interface/aggregate-ethernet/entry[layer2]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Layer2 def layer2 if @create_children @subclasses['layer2'] ||= Layer2.new(parent_instance: self, create_children: @create_children) else Layer2.new(parent_instance: self) end end class Layer3 < XML::ConfigClass def has_multiple_values? true end def _section :'layer3' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')", "#myentry(devices)/network/interface/tunnel/units/entry/@name", "string('tunnel')", "#myentry(devices)/network/interface/sdwan/units/entry/@name", "string('sdwan')"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Layer3 def layer3 if @create_children @subclasses['layer3'] ||= Layer3.new(parent_instance: self, create_children: @create_children) else Layer3.new(parent_instance: self) end end class External < XML::ConfigClass def has_multiple_values? true end def _section :'external' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/import/visible-vsys/member", "#vsys/entry[(@name='$mymember') and (count(import/visible-vsys/member[text()='$myvsysname'])>0)]/@name", "#myentry(devices)/network/shared-gateway/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class External def external if @create_children @subclasses['external'] ||= External.new(parent_instance: self, create_children: @create_children) else External.new(parent_instance: self) end end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end @props={} end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end @props={"zone-protection-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Zone protection profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/profiles/zone-protection-profile/entry/@name", "##/predefined/network-profile/zone-protection-profile/entry/@name"]}, "enable-packet-buffer-protection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "log-setting"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"63", "help-string"=>"Log setting for forwarding scan logs", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/zone/entry/network/log-setting", "##/shared/log-settings/profiles/entry/@name"]}} # Zone protection profile def zone_protection_profile prop_get('zone-protection-profile') end # Zone protection profile def zone_protection_profile=(val) prop_set('zone-protection-profile', val) end def enable_packet_buffer_protection prop_get('enable-packet-buffer-protection') end def enable_packet_buffer_protection=(val) prop_set('enable-packet-buffer-protection', val) end # Log setting for forwarding scan logs def log_setting prop_get('log-setting') end # Log setting for forwarding scan logs def log_setting=(val) prop_set('log-setting', val) end end # class Network def network @subclasses['network'] ||= Network.new(parent_instance: self, create_children: @create_children) end class UserAcl < ConfigClass def has_multiple_values? false end def _section :'user-acl' end class IncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeList def include_list if @create_children @subclasses['include-list'] ||= IncludeList.new(parent_instance: self, create_children: @create_children) else IncludeList.new(parent_instance: self) end end class ExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeList def exclude_list if @create_children @subclasses['exclude-list'] ||= ExcludeList.new(parent_instance: self, create_children: @create_children) else ExcludeList.new(parent_instance: self) end end @props={} end # class UserAcl def user_acl @subclasses['user-acl'] ||= UserAcl.new(parent_instance: self, create_children: @create_children) end class DeviceAcl < ConfigClass def has_multiple_values? false end def _section :'device-acl' end class IncludeList < XML::ConfigClass def has_multiple_values? true end def _section :'include-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeList def include_list if @create_children @subclasses['include-list'] ||= IncludeList.new(parent_instance: self, create_children: @create_children) else IncludeList.new(parent_instance: self) end end class ExcludeList < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-list' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/address/entry[not(ip-wildcard)]/@name", "##/shared/address/entry[not(ip-wildcard)]/@name", "#myentry(vsys)/address-group/entry/@name", "##/shared/address-group/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}, "ipspec"=>{}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeList def exclude_list if @create_children @subclasses['exclude-list'] ||= ExcludeList.new(parent_instance: self, create_children: @create_children) else ExcludeList.new(parent_instance: self) end end @props={} end # class DeviceAcl def device_acl @subclasses['device-acl'] ||= DeviceAcl.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "enable-user-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "enable-device-identification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "dos-profile"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "help-string"=>"Denial-of-Service profile", "autocomplete"=>"yes", "memberof"=> ["##/predefined/profiles/dos/entry/@name", "#config/shared/profiles/dos/entry/@name", "../../../../profiles/dos/entry/@name"]}, "dos-log-setting"=> {"node-type"=>"element", "disabled"=>"yes", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Log setting for forwarding DoS logs", "autocomplete"=>"yes", "memberof"=> ["#config/shared/log-settings/profiles/entry/@name", "#myentry(vsys)/log-settings/profiles/entry/@name"]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def enable_user_identification prop_get('enable-user-identification') end def enable_user_identification=(val) prop_set('enable-user-identification', val) end def enable_device_identification prop_get('enable-device-identification') end def enable_device_identification=(val) prop_set('enable-device-identification', val) end # Denial-of-Service profile def dos_profile prop_get('dos-profile') end # Denial-of-Service profile def dos_profile=(val) prop_set('dos-profile', val) end # Log setting for forwarding DoS logs def dos_log_setting prop_get('dos-log-setting') end # Log setting for forwarding DoS logs def dos_log_setting=(val) prop_set('dos-log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Zone def zone if @create_children @subclasses['zone'] ||= Zone.new(parent_instance: self, create_children: @create_children) else Zone.new(parent_instance: self) end end class SdwanInterfaceProfile < XML::ConfigClass def has_multiple_values? true end def _section :'sdwan-interface-profile' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "disable-override"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"no", "ui-hint"=>"fieldLabel: \"Disable override\"", "ui-field-hint"=>"type: \"bool\"", "help-string"=>"disable object override in child device groups", "enum"=>[{"value"=>"no"}]}, "link-tag"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["/config/shared/tag/entry/@name", "#myentry(vsys)/tag/entry/@name", "##/predefined/tag/entry/@name", "##/shared/tag/entry/@name", "#config/shared/tag/entry/@name", "#myentry(template-stack)/variable/entry[type/link-tag]/@name"]}, "link-type"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Ethernet", "help-string"=>"Type of link", "enum"=> [{"value"=>"ADSL/DSL", "help-string"=>"ADSL/DSL Link"}, {"value"=>"Cablemodem", "help-string"=>"Cablemodem Link"}, {"value"=>"Ethernet", "help-string"=>"Ethernet Link"}, {"value"=>"Fiber", "help-string"=>"Fiber Link"}, {"value"=>"LTE/3G/4G/5G", "help-string"=>"LTE/3G/4G/5G Link"}, {"value"=>"MPLS", "help-string"=>"MPLS Link"}, {"value"=>"Microwave/Radio", "help-string"=>"Microwave/Radio Link"}, {"value"=>"Satellite", "help-string"=>"Satellite Link"}, {"value"=>"WiFi", "help-string"=>"WiFi Link"}, {"value"=>"Other", "help-string"=>"Other Type of Link"}]}, "vpn-data-tunnel-support"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Enable data traffic over VPN"}, "maximum-download"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"100000", "help-string"=>"Maximum Capacity in Mbps"}, "maximum-upload"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"0", "max"=>"100000", "help-string"=>"Maximum Capacity in Mbps"}, "error-correction"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Allow this interface for FEC / Packet Duplication"}, "path-monitoring"=> {"node-type"=>"element", "type"=>"enum", "default"=>"Aggressive", "help-string"=>"Path Monitoring Profile", "enum"=> [{"value"=>"Aggressive", "help-string"=>"Aggressive Fixed Interval"}, {"value"=>"Relaxed", "help-string"=>"Relaxed Fixed Interval"}]}, "vpn-failover-metric"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "default"=>"10", "help-string"=>"Metric for vpn tunnels on this interface"}, "probe-frequency"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"5", "default"=>"5", "help-string"=>"Number of probes sent per second"}, "probe-idle-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"86400", "default"=>"60", "help-string"=>"Idle time in seconds when no probes are sent"}, "failback-hold-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"20", "max"=>"120", "default"=>"120", "help-string"=> "Failback hold time in seconds before reverting session to original path"}, "comment"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"0", "maxlen"=>"1023"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # disable object override in child device groups def disable_override prop_get('disable-override') end # disable object override in child device groups def disable_override=(val) prop_set('disable-override', val) end def link_tag prop_get('link-tag') end def link_tag=(val) prop_set('link-tag', val) end # Type of link def link_type prop_get('link-type') end # Type of link def link_type=(val) prop_set('link-type', val) end # Enable data traffic over VPN def vpn_data_tunnel_support prop_get('vpn-data-tunnel-support') end # Enable data traffic over VPN def vpn_data_tunnel_support=(val) prop_set('vpn-data-tunnel-support', val) end # Maximum Capacity in Mbps def maximum_download prop_get('maximum-download') end # Maximum Capacity in Mbps def maximum_download=(val) prop_set('maximum-download', val) end # Maximum Capacity in Mbps def maximum_upload prop_get('maximum-upload') end # Maximum Capacity in Mbps def maximum_upload=(val) prop_set('maximum-upload', val) end # Allow this interface for FEC / Packet Duplication def error_correction prop_get('error-correction') end # Allow this interface for FEC / Packet Duplication def error_correction=(val) prop_set('error-correction', val) end # Path Monitoring Profile def path_monitoring prop_get('path-monitoring') end # Path Monitoring Profile def path_monitoring=(val) prop_set('path-monitoring', val) end # Metric for vpn tunnels on this interface def vpn_failover_metric prop_get('vpn-failover-metric') end # Metric for vpn tunnels on this interface def vpn_failover_metric=(val) prop_set('vpn-failover-metric', val) end # Number of probes sent per second def probe_frequency prop_get('probe-frequency') end # Number of probes sent per second def probe_frequency=(val) prop_set('probe-frequency', val) end # Idle time in seconds when no probes are sent def probe_idle_time prop_get('probe-idle-time') end # Idle time in seconds when no probes are sent def probe_idle_time=(val) prop_set('probe-idle-time', val) end # Failback hold time in seconds before reverting session to original path def failback_hold_time prop_get('failback-hold-time') end # Failback hold time in seconds before reverting session to original path def failback_hold_time=(val) prop_set('failback-hold-time', val) end def comment prop_get('comment') end def comment=(val) prop_set('comment', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class SdwanInterfaceProfile def sdwan_interface_profile if @create_children @subclasses['sdwan-interface-profile'] ||= SdwanInterfaceProfile.new(parent_instance: self, create_children: @create_children) else SdwanInterfaceProfile.new(parent_instance: self) end end class User < XML::ConfigClass def has_multiple_values? true end def _section :'user' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class User def user if @create_children @subclasses['user'] ||= User.new(parent_instance: self, create_children: @create_children) else User.new(parent_instance: self) end end class UserGroup < XML::ConfigClass def has_multiple_values? true end def _section :'user-group' end class Entry < XML::ConfigClass def has_multiple_values? true end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "member"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Entry def entry if @create_children @subclasses['entry'] ||= Entry.new(parent_instance: self, create_children: @create_children) else Entry.new(parent_instance: self) end end @props={} end # class UserGroup def user_group if @create_children @subclasses['user-group'] ||= UserGroup.new(parent_instance: self, create_children: @create_children) else UserGroup.new(parent_instance: self) end end class GlobalProtect__36 < ConfigClass def has_multiple_values? false end def _section :'global-protect__36' end class GlobalProtectPortal < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-portal' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class PortalConfig < ConfigClass def has_multiple_values? false end def _section :'portal-config' end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"IPv4 addresses", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/$ifname/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 addresses def ipv4 prop_get('ipv4') end # IPv4 addresses def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IPv4 address def ipv4 prop_get('ipv4') end # Floating IPv4 address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class ClientAuth < XML::ConfigClass def has_multiple_values? true end def _section :'client-auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect client authentication name"}, "os"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Any", "help-string"=>"Client OS", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"Any"}, {"value"=>"Browser"}, {"value"=>"Satellite"}]}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"authentication profile used for this GlobalProtect", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "auto-retrieve-passcode"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "Automatically retrieve passcode from SoftToken application"}, "username-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Username", "optional"=>"yes", "help-string"=>"Username Label"}, "password-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Password", "optional"=>"yes", "help-string"=>"Password Label"}, "authentication-message"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"256", "default"=>"Enter login credentials", "optional"=>"yes", "help-string"=>"Authentication Message"}, "user-credential-or-client-cert-required"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no", "optional"=>"yes", "help-string"=> "Allow Authentication with User Credentials OR Client Certificate", "enum"=> [{"value"=>"no", "help-string"=>"No (User Credentials AND Client Certificate Required)"}, {"value"=>"yes", "help-string"=> "Yes (User Credentials OR Client Certificate Required)"}]}} # GlobalProtect client authentication name def name prop_get('@name') end # Client OS def os prop_get('os') end # Client OS def os=(val) prop_set('os', val) end # authentication profile used for this GlobalProtect def authentication_profile prop_get('authentication-profile') end # authentication profile used for this GlobalProtect def authentication_profile=(val) prop_set('authentication-profile', val) end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode prop_get('auto-retrieve-passcode') end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode=(val) prop_set('auto-retrieve-passcode', val) end # Username Label def username_label prop_get('username-label') end # Username Label def username_label=(val) prop_set('username-label', val) end # Password Label def password_label prop_get('password-label') end # Password Label def password_label=(val) prop_set('password-label', val) end # Authentication Message def authentication_message prop_get('authentication-message') end # Authentication Message def authentication_message=(val) prop_set('authentication-message', val) end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required prop_get('user-credential-or-client-cert-required') end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required=(val) prop_set('user-credential-or-client-cert-required', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientAuth def client_auth if @create_children @subclasses['client-auth'] ||= ClientAuth.new(parent_instance: self, create_children: @create_children) else ClientAuth.new(parent_instance: self) end end class ConfigSelection < ConfigClass def has_multiple_values? false end def _section :'config-selection' end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Windows < ConfigClass def has_multiple_values? false end def _section :'windows' end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end @props={} end # class Windows def windows @subclasses['windows'] ||= Windows.new(parent_instance: self, create_children: @create_children) end class MacOs < ConfigClass def has_multiple_values? false end def _section :'mac-os' end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end @props={} end # class MacOs def mac_os @subclasses['mac-os'] ||= MacOs.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class ConfigSelection def config_selection @subclasses['config-selection'] ||= ConfigSelection.new(parent_instance: self, create_children: @create_children) end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "custom-login-page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"factory-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/response-page/global-protect-portal-custom-login-page/entry/@name", "#config/shared/response-page/global-protect-portal-custom-login-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-login-page/entry/@name", "string('Disable')"]}, "custom-home-page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "default"=>"factory-default", "autocomplete"=>"yes", "memberof"=> ["##/predefined/response-page/global-protect-portal-custom-home-page/entry/@name", "#config/shared/response-page/global-protect-portal-custom-home-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-home-page/entry/@name"]}, "custom-help-page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["string('factory-default')", "#config/shared/response-page/global-protect-portal-custom-help-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-help-page/entry/@name"]}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/profiles/entry/@name", "#myentry(vsys)/log-settings/profiles/entry/@name"]}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end def custom_login_page prop_get('custom-login-page') end def custom_login_page=(val) prop_set('custom-login-page', val) end def custom_home_page prop_get('custom-home-page') end def custom_home_page=(val) prop_set('custom-home-page', val) end def custom_help_page prop_get('custom-help-page') end def custom_help_page=(val) prop_set('custom-help-page', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class PortalConfig def portal_config @subclasses['portal-config'] ||= PortalConfig.new(parent_instance: self, create_children: @create_children) end class ClientlessVpn < ConfigClass def has_multiple_values? false end def _section :'clientless-vpn' end class LoginLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'login-lifetime' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"1440", "min"=>"60"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"24", "min"=>"1", "default"=>"3"}} # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end end # class LoginLifetime def login_lifetime if @create_children @subclasses['login-lifetime'] ||= LoginLifetime.new(parent_instance: self, create_children: @create_children) else LoginLifetime.new(parent_instance: self) end end class InactivityLogout < XML::ConfigClass def has_multiple_values? true end def _section :'inactivity-logout' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify inactivity time in minutes", "type"=>"rangedint", "max"=>"1440", "min"=>"5", "default"=>"30"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify inactivity time in hours", "type"=>"rangedint", "max"=>"24", "min"=>"1"}} # specify inactivity time in minutes def minutes prop_get('minutes') end # specify inactivity time in minutes def minutes=(val) prop_set('minutes', val) end # specify inactivity time in hours def hours prop_get('hours') end # specify inactivity time in hours def hours=(val) prop_set('hours', val) end end # class InactivityLogout def inactivity_logout if @create_children @subclasses['inactivity-logout'] ||= InactivityLogout.new(parent_instance: self, create_children: @create_children) else InactivityLogout.new(parent_instance: self) end end class CryptoSettings < ConfigClass def has_multiple_values? false end def _section :'crypto-settings' end class SslProtocol < ConfigClass def has_multiple_values? false end def _section :'ssl-protocol' end @props={"min-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"tls1-0", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}]}, "max-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"max", "enum"=> [{"value"=>"sslv3", "prune-on"=>"fips-mode", "help-string"=>"SSLv3.0"}, {"value"=>"tls1-0", "help-string"=>"TLSv1.0"}, {"value"=>"tls1-1", "help-string"=>"TLSv1.1"}, {"value"=>"tls1-2", "help-string"=>"TLSv1.2"}, {"value"=>"max", "help-string"=>"Max"}]}, "keyxchg-algo-rsa"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RSA"}, "keyxchg-algo-dhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm DHE"}, "keyxchg-algo-ecdhe"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm ECDHE"}, "enc-algo-3des__6"=> {"node-type"=>"element", "type"=>"bool", "prune-on"=>"cc-only-mode", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm 3DES"}, "enc-algo-rc4"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm RC4"}, "enc-algo-aes-128-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-CBC"}, "enc-algo-aes-256-cbc"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-CBC"}, "enc-algo-aes-128-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-128-GCM"}, "enc-algo-aes-256-gcm"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow algorithm AES-256-GCM"}, "auth-algo-md5__12"=> {"node-type"=>"element", "prune-on"=>"fips-mode", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Allow authentication MD5"}, "auth-algo-sha1"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA1"}, "auth-algo-sha256"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA256"}, "auth-algo-sha384"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Allow authentication SHA384"}} def min_version prop_get('min-version') end def min_version=(val) prop_set('min-version', val) end def max_version prop_get('max-version') end def max_version=(val) prop_set('max-version', val) end # Allow algorithm RSA def keyxchg_algo_rsa prop_get('keyxchg-algo-rsa') end # Allow algorithm RSA def keyxchg_algo_rsa=(val) prop_set('keyxchg-algo-rsa', val) end # Allow algorithm DHE def keyxchg_algo_dhe prop_get('keyxchg-algo-dhe') end # Allow algorithm DHE def keyxchg_algo_dhe=(val) prop_set('keyxchg-algo-dhe', val) end # Allow algorithm ECDHE def keyxchg_algo_ecdhe prop_get('keyxchg-algo-ecdhe') end # Allow algorithm ECDHE def keyxchg_algo_ecdhe=(val) prop_set('keyxchg-algo-ecdhe', val) end # Allow algorithm 3DES def enc_algo_3des__6 prop_get('enc-algo-3des__6') end # Allow algorithm 3DES def enc_algo_3des__6=(val) prop_set('enc-algo-3des__6', val) end # Allow algorithm RC4 def enc_algo_rc4 prop_get('enc-algo-rc4') end # Allow algorithm RC4 def enc_algo_rc4=(val) prop_set('enc-algo-rc4', val) end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc prop_get('enc-algo-aes-128-cbc') end # Allow algorithm AES-128-CBC def enc_algo_aes_128_cbc=(val) prop_set('enc-algo-aes-128-cbc', val) end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc prop_get('enc-algo-aes-256-cbc') end # Allow algorithm AES-256-CBC def enc_algo_aes_256_cbc=(val) prop_set('enc-algo-aes-256-cbc', val) end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm prop_get('enc-algo-aes-128-gcm') end # Allow algorithm AES-128-GCM def enc_algo_aes_128_gcm=(val) prop_set('enc-algo-aes-128-gcm', val) end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm prop_get('enc-algo-aes-256-gcm') end # Allow algorithm AES-256-GCM def enc_algo_aes_256_gcm=(val) prop_set('enc-algo-aes-256-gcm', val) end # Allow authentication MD5 def auth_algo_md5__12 prop_get('auth-algo-md5__12') end # Allow authentication MD5 def auth_algo_md5__12=(val) prop_set('auth-algo-md5__12', val) end # Allow authentication SHA1 def auth_algo_sha1 prop_get('auth-algo-sha1') end # Allow authentication SHA1 def auth_algo_sha1=(val) prop_set('auth-algo-sha1', val) end # Allow authentication SHA256 def auth_algo_sha256 prop_get('auth-algo-sha256') end # Allow authentication SHA256 def auth_algo_sha256=(val) prop_set('auth-algo-sha256', val) end # Allow authentication SHA384 def auth_algo_sha384 prop_get('auth-algo-sha384') end # Allow authentication SHA384 def auth_algo_sha384=(val) prop_set('auth-algo-sha384', val) end end # class SslProtocol def ssl_protocol @subclasses['ssl-protocol'] ||= SslProtocol.new(parent_instance: self, create_children: @create_children) end class ServerCertVerification < ConfigClass def has_multiple_values? false end def _section :'server-cert-verification' end @props={"block-expired-certificate"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is expired"}, "block-untrusted-issuer"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "whether to block sessions if server's certificate is issued by untrusted CA"}, "block-unknown-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"whether to block a session if cert. status is unknown"}, "block-timeout-cert"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "whether to block a session if cert. status can't be retrieved within timeout"}} # whether to block sessions if server's certificate is expired def block_expired_certificate prop_get('block-expired-certificate') end # whether to block sessions if server's certificate is expired def block_expired_certificate=(val) prop_set('block-expired-certificate', val) end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer prop_get('block-untrusted-issuer') end # whether to block sessions if server's certificate is issued by untrusted CA def block_untrusted_issuer=(val) prop_set('block-untrusted-issuer', val) end # whether to block a session if cert. status is unknown def block_unknown_cert prop_get('block-unknown-cert') end # whether to block a session if cert. status is unknown def block_unknown_cert=(val) prop_set('block-unknown-cert', val) end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert prop_get('block-timeout-cert') end # whether to block a session if cert. status can't be retrieved within timeout def block_timeout_cert=(val) prop_set('block-timeout-cert', val) end end # class ServerCertVerification def server_cert_verification @subclasses['server-cert-verification'] ||= ServerCertVerification.new(parent_instance: self, create_children: @create_children) end @props={} end # class CryptoSettings def crypto_settings @subclasses['crypto-settings'] ||= CryptoSettings.new(parent_instance: self, create_children: @create_children) end class RewriteExcludeDomainList < XML::ConfigClass def has_multiple_values? true end def _section :'rewrite-exclude-domain-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"domain name which can start with *.", "max-count"=>"200"}} # domain name which can start with *. def member prop_get('member') end # domain name which can start with *. def member=(val) prop_set('member', val) end end # class RewriteExcludeDomainList def rewrite_exclude_domain_list if @create_children @subclasses['rewrite-exclude-domain-list'] ||= RewriteExcludeDomainList.new(parent_instance: self, create_children: @create_children) else RewriteExcludeDomainList.new(parent_instance: self) end end class AppsToUserMapping < XML::ConfigClass def has_multiple_values? true end def _section :'apps-to-user-mapping' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Applications < XML::ConfigClass def has_multiple_values? true end def _section :'applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Global protect clientless app or app-group", "autocomplete"=>"yes", "memberof"=> ["#config/shared/global-protect/clientless-app/entry/@name", "#config/shared/global-protect/clientless-app-group/entry/@name", "#myentry(vsys)/global-protect/clientless-app/entry/@name", "#myentry(vsys)/global-protect/clientless-app-group/entry/@name"]}} # Global protect clientless app or app-group def member prop_get('member') end # Global protect clientless app or app-group def member=(val) prop_set('member', val) end end # class Applications def applications if @create_children @subclasses['applications'] ||= Applications.new(parent_instance: self, create_children: @create_children) else Applications.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect user to app mappings"}, "enable-custom-app-URL-address-bar"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=> "URL browse bar to access unpublished clientless VPN applications"}, "display-global-protect-agent-download-link"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Display Global Protect Agent download link"}} # GlobalProtect user to app mappings def name prop_get('@name') end # URL browse bar to access unpublished clientless VPN applications def enable_custom_app_URL_address_bar prop_get('enable-custom-app-URL-address-bar') end # URL browse bar to access unpublished clientless VPN applications def enable_custom_app_URL_address_bar=(val) prop_set('enable-custom-app-URL-address-bar', val) end # Display Global Protect Agent download link def display_global_protect_agent_download_link prop_get('display-global-protect-agent-download-link') end # Display Global Protect Agent download link def display_global_protect_agent_download_link=(val) prop_set('display-global-protect-agent-download-link', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AppsToUserMapping def apps_to_user_mapping if @create_children @subclasses['apps-to-user-mapping'] ||= AppsToUserMapping.new(parent_instance: self, create_children: @create_children) else AppsToUserMapping.new(parent_instance: self) end end class ProxyServerSetting < XML::ConfigClass def has_multiple_values? true end def _section :'proxy-server-setting' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Domains < XML::ConfigClass def has_multiple_values? true end def _section :'domains' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"256", "help-string"=>"domain name which can start with *.", "max-count"=>"50"}} # domain name which can start with *. def member prop_get('member') end # domain name which can start with *. def member=(val) prop_set('member', val) end end # class Domains def domains if @create_children @subclasses['domains'] ||= Domains.new(parent_instance: self, create_children: @create_children) else Domains.new(parent_instance: self) end end class ProxyServer < ConfigClass def has_multiple_values? false end def _section :'proxy-server' end @props={"server"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$0-9a-zA-Z.:/_-])+$", "maxlen"=>"63", "help-string"=>"Proxy server to use", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for proxy server"}, "user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=>"Proxy user name to use"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "encrypt"=>"yes", "help-string"=>"Proxy password to use"}} # Proxy server to use def server prop_get('server') end # Proxy server to use def server=(val) prop_set('server', val) end # Port for proxy server def port prop_get('port') end # Port for proxy server def port=(val) prop_set('port', val) end # Proxy user name to use def user prop_get('user') end # Proxy user name to use def user=(val) prop_set('user', val) end # Proxy password to use def password prop_get('password') end # Proxy password to use def password=(val) prop_set('password', val) end end # class ProxyServer def proxy_server @subclasses['proxy-server'] ||= ProxyServer.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"Clientless VPN Proxy setting"}, "use-proxy"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "help-string"=>"Whether to use proxy server"}} # Clientless VPN Proxy setting def name prop_get('@name') end # Whether to use proxy server def use_proxy prop_get('use-proxy') end # Whether to use proxy server def use_proxy=(val) prop_set('use-proxy', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ProxyServerSetting def proxy_server_setting if @create_children @subclasses['proxy-server-setting'] ||= ProxyServerSetting.new(parent_instance: self, create_children: @create_children) else ProxyServerSetting.new(parent_instance: self) end end @props={"hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^[$a-zA-Z0-9._-]+$", "maxlen"=>"255", "help-string"=>"FQDN or IP address of GlobalProtect Portal", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "security-zone"=> {"node-type"=>"element", "maxlen"=>"31", "optional"=>"yes", "type"=>"string", "help-string"=>"Zone to be used for clientless-vpn traffic", "autocomplete"=>"yes", "memberof"=>["#myentry(vsys)/zone/entry/@name"]}, "max-user"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"30000", "platform-max"=>"cfg.general.max-sslvpn-ck-cache-size-mp", "help-string"=> "max number of concurrent logined users to GlobalProtect portal"}, "dns-proxy"=> {"node-type"=>"element", "type"=>"string", "help-string"=> "DNS proxy object used for resolving clientless-vpn application hostnames", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/dns-proxy/entry/@name", "#myentry(vsys)/dns-proxy/entry/@name"]}} # FQDN or IP address of GlobalProtect Portal def hostname prop_get('hostname') end # FQDN or IP address of GlobalProtect Portal def hostname=(val) prop_set('hostname', val) end # Zone to be used for clientless-vpn traffic def security_zone prop_get('security-zone') end # Zone to be used for clientless-vpn traffic def security_zone=(val) prop_set('security-zone', val) end # max number of concurrent logined users to GlobalProtect portal def max_user prop_get('max-user') end # max number of concurrent logined users to GlobalProtect portal def max_user=(val) prop_set('max-user', val) end # DNS proxy object used for resolving clientless-vpn application hostnames def dns_proxy prop_get('dns-proxy') end # DNS proxy object used for resolving clientless-vpn application hostnames def dns_proxy=(val) prop_set('dns-proxy', val) end end # class ClientlessVpn def clientless_vpn @subclasses['clientless-vpn'] ||= ClientlessVpn.new(parent_instance: self, create_children: @create_children) end class ClientConfig < ConfigClass def has_multiple_values? false end def _section :'client-config' end class RootCa < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"CA cert", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"]}, "install-in-cert-store"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Install in Trusted CA Certificate Store"}} # CA cert def name prop_get('@name') end # Install in Trusted CA Certificate Store def install_in_cert_store prop_get('install-in-cert-store') end # Install in Trusted CA Certificate Store def install_in_cert_store=(val) prop_set('install-in-cert-store', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RootCa def root_ca if @create_children @subclasses['root-ca'] ||= RootCa.new(parent_instance: self, create_children: @create_children) else RootCa.new(parent_instance: self) end end class Configs < XML::ConfigClass def has_multiple_values? true end def _section :'configs' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Criteria < ConfigClass def has_multiple_values? false end def _section :'criteria' end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry value name"}, "value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Registry value name def name prop_get('@name') end # Registry value data def value_data prop_get('value-data') end # Registry value data def value_data=(val) prop_set('value-data', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Registry key"}, "default-value-data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Registry key default value data"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Key does not exist or match specified value data"}} # Registry key def name prop_get('@name') end # Registry key default value data def default_value_data prop_get('default-value-data') end # Registry key default value data def default_value_data=(val) prop_set('default-value-data', val) end # Key does not exist or match specified value data def negate prop_get('negate') end # Key does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Key name"}, "value"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"1024", "help-string"=>"Key value"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Value does not exist or match specified value data"}} # Key name def name prop_get('@name') end # Key value def value prop_get('value') end # Key value def value=(val) prop_set('value', val) end # Value does not exist or match specified value data def negate prop_get('negate') end # Value does not exist or match specified value data def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"1023", "regex"=>".*", "help-string"=>"Preference list"}, "negate"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Plist does not exist"}} # Preference list def name prop_get('@name') end # Plist does not exist def negate prop_get('negate') end # Plist does not exist def negate=(val) prop_set('negate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end @props={} end # class Criteria def criteria @subclasses['criteria'] ||= Criteria.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end class MachineAccountExistsWithSerialno < XML::ConfigClass def has_multiple_values? true end def _section :'machine-account-exists-with-serialno' end class No < ConfigClass def has_multiple_values? false end def _section :'no' end @props={} end # class No def no @subclasses['no'] ||= No.new(parent_instance: self, create_children: @create_children) end class Yes < ConfigClass def has_multiple_values? false end def _section :'yes' end @props={} end # class Yes def yes @subclasses['yes'] ||= Yes.new(parent_instance: self, create_children: @create_children) end @props={} end # class MachineAccountExistsWithSerialno def machine_account_exists_with_serialno if @create_children @subclasses['machine-account-exists-with-serialno'] ||= MachineAccountExistsWithSerialno.new(parent_instance: self, create_children: @create_children) else MachineAccountExistsWithSerialno.new(parent_instance: self) end end class Gateways < ConfigClass def has_multiple_values? false end def _section :'gateways' end class Internal < ConfigClass def has_multiple_values? false end def _section :'internal' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv4", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv6", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 def ipv4 prop_get('ipv4') end # IPv4 def ipv4=(val) prop_set('ipv4', val) end # IPv6 def ipv6 prop_get('ipv6') end # IPv6 def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class SourceIp < XML::ConfigClass def has_multiple_values? true end def _section :'source-ip' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceIp def source_ip if @create_children @subclasses['source-ip'] ||= SourceIp.new(parent_instance: self, create_children: @create_children) else SourceIp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"description of the gateway"}, "fqdn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"255", "regex"=>"^([$:/a-zA-Z0-9._-])+$", "help-string"=>"fqdn", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # description of the gateway def name prop_get('@name') end # fqdn def fqdn prop_get('fqdn') end # fqdn def fqdn=(val) prop_set('fqdn', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end class DhcpOptionCode < XML::ConfigClass def has_multiple_values? true end def _section :'dhcp-option-code' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"254"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhcpOptionCode def dhcp_option_code if @create_children @subclasses['dhcp-option-code'] ||= DhcpOptionCode.new(parent_instance: self, create_children: @create_children) else DhcpOptionCode.new(parent_instance: self) end end @props={} end # class Internal def internal @subclasses['internal'] ||= Internal.new(parent_instance: self, create_children: @create_children) end class External < ConfigClass def has_multiple_values? false end def _section :'external' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv4", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv6", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 def ipv4 prop_get('ipv4') end # IPv4 def ipv4=(val) prop_set('ipv4', val) end # IPv6 def ipv6 prop_get('ipv6') end # IPv6 def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class PriorityRule < XML::ConfigClass def has_multiple_values? true end def _section :'priority-rule' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "help-string"=>"Region name", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "##/shared/region/entry/@name", "#myentry(vsys)/region/entry/@name", "string('Any')", "string('Any')"]}, "priority"=> {"node-type"=>"element", "type"=>"enum", "default"=>"1", "help-string"=>"Priority of GlobalProtect gateway", "enum"=> [{"value"=>"0", "help-string"=>"Manual only"}, {"value"=>"1", "help-string"=>"Highest"}, {"value"=>"2", "help-string"=>"High"}, {"value"=>"3", "help-string"=>"Medium"}, {"value"=>"4", "help-string"=>"Low"}, {"value"=>"5", "help-string"=>"Lowest"}]}} # Region name def name prop_get('@name') end # Priority of GlobalProtect gateway def priority prop_get('priority') end # Priority of GlobalProtect gateway def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PriorityRule def priority_rule if @create_children @subclasses['priority-rule'] ||= PriorityRule.new(parent_instance: self, create_children: @create_children) else PriorityRule.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^[^;|`&'\"<>[:cntrl:]]+$", "help-string"=>"description of the gateway"}, "fqdn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"255", "regex"=>"^([$:/a-zA-Z0-9._-])+$", "help-string"=>"fqdn", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "manual"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"If this GlobalProtect gateway can be manually selected"}} # description of the gateway def name prop_get('@name') end # fqdn def fqdn prop_get('fqdn') end # fqdn def fqdn=(val) prop_set('fqdn', val) end # If this GlobalProtect gateway can be manually selected def manual prop_get('manual') end # If this GlobalProtect gateway can be manually selected def manual=(val) prop_set('manual', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={"cutoff-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "default"=>"5", "max"=>"10", "optional"=>"yes", "help-string"=>"Gateway discovery cutoff time in seconds"}} # Gateway discovery cutoff time in seconds def cutoff_time prop_get('cutoff-time') end # Gateway discovery cutoff time in seconds def cutoff_time=(val) prop_set('cutoff-time', val) end end # class External def external @subclasses['external'] ||= External.new(parent_instance: self, create_children: @create_children) end @props={} end # class Gateways def gateways @subclasses['gateways'] ||= Gateways.new(parent_instance: self, create_children: @create_children) end class InternalHostDetection < ConfigClass def has_multiple_values? false end def _section :'internal-host-detection' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Internal IPv4 address of a host", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv4-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"256", "help-string"=>"Host name of the IPv4 in DNS record", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # Internal IPv4 address of a host def ip_address prop_get('ip-address') end # Internal IPv4 address of a host def ip_address=(val) prop_set('ip-address', val) end # Host name of the IPv4 in DNS record def hostname prop_get('hostname') end # Host name of the IPv4 in DNS record def hostname=(val) prop_set('hostname', val) end end # class InternalHostDetection def internal_host_detection @subclasses['internal-host-detection'] ||= InternalHostDetection.new(parent_instance: self, create_children: @create_children) end class InternalHostDetectionV6 < ConfigClass def has_multiple_values? false end def _section :'internal-host-detection-v6' end @props={"ip-address"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"Internal IPv6 address of a host", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"ipv6-only"=>"yes", "unicast-only"=>"yes"}, "string"=>{"maxlen"=>"63"}}}, "hostname"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^[$a-zA-Z0-9._-]+$", "loose-membership"=>"yes", "maxlen"=>"256", "help-string"=>"Host name of the IPv6 in DNS record", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}} # Internal IPv6 address of a host def ip_address prop_get('ip-address') end # Internal IPv6 address of a host def ip_address=(val) prop_set('ip-address', val) end # Host name of the IPv6 in DNS record def hostname prop_get('hostname') end # Host name of the IPv6 in DNS record def hostname=(val) prop_set('hostname', val) end end # class InternalHostDetectionV6 def internal_host_detection_v6 @subclasses['internal-host-detection-v6'] ||= InternalHostDetectionV6.new(parent_instance: self, create_children: @create_children) end class AgentUi < ConfigClass def has_multiple_values? false end def _section :'agent-ui' end class WelcomePage < ConfigClass def has_multiple_values? false end def _section :'welcome-page' end @props={"page"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/predefined/response-page/global-protect-portal-custom-welcome-page/entry/@name", "#config/shared/response-page/global-protect-portal-custom-welcome-page/entry/@name", "#myentry(vsys)/response-page/global-protect-portal-custom-welcome-page/entry/@name"]}} def page prop_get('page') end def page=(val) prop_set('page', val) end end # class WelcomePage def welcome_page @subclasses['welcome-page'] ||= WelcomePage.new(parent_instance: self, create_children: @create_children) end @props={"passcode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "minlen"=>"6", "maxlen"=>"64", "help-string"=>"Passcode required for override"}, "uninstall-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Password to uninstall GlobalProtect app"}, "agent-user-override-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "default"=>"0", "help-string"=>"Agent user override duration in minutes"}, "max-agent-user-overrides"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "default"=>"0", "help-string"=>"Max agent user overrides"}} # Passcode required for override def passcode prop_get('passcode') end # Passcode required for override def passcode=(val) prop_set('passcode', val) end # Password to uninstall GlobalProtect app def uninstall_password prop_get('uninstall-password') end # Password to uninstall GlobalProtect app def uninstall_password=(val) prop_set('uninstall-password', val) end # Agent user override duration in minutes def agent_user_override_timeout prop_get('agent-user-override-timeout') end # Agent user override duration in minutes def agent_user_override_timeout=(val) prop_set('agent-user-override-timeout', val) end # Max agent user overrides def max_agent_user_overrides prop_get('max-agent-user-overrides') end # Max agent user overrides def max_agent_user_overrides=(val) prop_set('max-agent-user-overrides', val) end end # class AgentUi def agent_ui @subclasses['agent-ui'] ||= AgentUi.new(parent_instance: self, create_children: @create_children) end class HipCollection < ConfigClass def has_multiple_values? false end def _section :'hip-collection' end class Exclusion < ConfigClass def has_multiple_values? false end def _section :'exclusion' end class Category < XML::ConfigClass def has_multiple_values? true end def _section :'category' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Vendor < XML::ConfigClass def has_multiple_values? true end def _section :'vendor' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Product < XML::ConfigClass def has_multiple_values? true end def _section :'product' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/predefined/opswat_v4/Microsoft/category/entry[@name='$category_name']/vendor/entry[@name='$vendor_name']/product/entry/@name", "##/predefined/opswat_v4/Apple/category/entry[@name='$category_name']/vendor/entry[@name='$vendor_name']/product/entry/@name", "##/predefined/opswat_v4/Linux/category/entry[@name='$category_name']/vendor/entry[@name='$vendor_name']/product/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Product def product if @create_children @subclasses['product'] ||= Product.new(parent_instance: self, create_children: @create_children) else Product.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/predefined/opswat_v4/Microsoft/category/entry[@name='$category_name']/vendor/entry/@name", "##/predefined/opswat_v4/Apple/category/entry[@name='$category_name']/vendor/entry/@name", "##/predefined/opswat_v4/Linux/category/entry[@name='$category_name']/vendor/entry/@name"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vendor def vendor if @create_children @subclasses['vendor'] ||= Vendor.new(parent_instance: self, create_children: @create_children) else Vendor.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"31", "autocomplete"=>"yes", "memberof"=> ["##/predefined/opswat_v4/Microsoft/category/entry/@name[. != 'host-info']", "##/predefined/opswat_v4/Apple/category/entry/@name[. != 'host-info']", "##/predefined/opswat_v4/Linux/category/entry/@name[. != 'host-info']"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Category def category if @create_children @subclasses['category'] ||= Category.new(parent_instance: self, create_children: @create_children) else Category.new(parent_instance: self) end end @props={} end # class Exclusion def exclusion @subclasses['exclusion'] ||= Exclusion.new(parent_instance: self, create_children: @create_children) end class CustomChecks < ConfigClass def has_multiple_values? false end def _section :'custom-checks' end class Windows < ConfigClass def has_multiple_values? false end def _section :'windows' end class RegistryKey < XML::ConfigClass def has_multiple_values? true end def _section :'registry-key' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RegistryValue < XML::ConfigClass def has_multiple_values? true end def _section :'registry-value' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RegistryValue def registry_value if @create_children @subclasses['registry-value'] ||= RegistryValue.new(parent_instance: self, create_children: @create_children) else RegistryValue.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RegistryKey def registry_key if @create_children @subclasses['registry-key'] ||= RegistryKey.new(parent_instance: self, create_children: @create_children) else RegistryKey.new(parent_instance: self) end end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023", "max-count"=>"1024"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end @props={} end # class Windows def windows @subclasses['windows'] ||= Windows.new(parent_instance: self, create_children: @create_children) end class MacOs < ConfigClass def has_multiple_values? false end def _section :'mac-os' end class Plist < XML::ConfigClass def has_multiple_values? true end def _section :'plist' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Key < XML::ConfigClass def has_multiple_values? true end def _section :'key' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Key def key if @create_children @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) else Key.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"1023"}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Plist def plist if @create_children @subclasses['plist'] ||= Plist.new(parent_instance: self, create_children: @create_children) else Plist.new(parent_instance: self) end end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023", "max-count"=>"1024"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end @props={} end # class MacOs def mac_os @subclasses['mac-os'] ||= MacOs.new(parent_instance: self, create_children: @create_children) end class Linux < ConfigClass def has_multiple_values? false end def _section :'linux' end class ProcessList < XML::ConfigClass def has_multiple_values? true end def _section :'process-list' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"1023", "max-count"=>"1024"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ProcessList def process_list if @create_children @subclasses['process-list'] ||= ProcessList.new(parent_instance: self, create_children: @create_children) else ProcessList.new(parent_instance: self) end end @props={} end # class Linux def linux @subclasses['linux'] ||= Linux.new(parent_instance: self, create_children: @create_children) end @props={} end # class CustomChecks def custom_checks @subclasses['custom-checks'] ||= CustomChecks.new(parent_instance: self, create_children: @create_children) end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "max-wait-time"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"10", "max"=>"60", "default"=>"20", "optional"=>"yes", "help-string"=>"Max Wait Time (Sec)"}, "collect-hip-data"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Collect HIP Data"}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Max Wait Time (Sec) def max_wait_time prop_get('max-wait-time') end # Max Wait Time (Sec) def max_wait_time=(val) prop_set('max-wait-time', val) end # Collect HIP Data def collect_hip_data prop_get('collect-hip-data') end # Collect HIP Data def collect_hip_data=(val) prop_set('collect-hip-data', val) end end # class HipCollection def hip_collection @subclasses['hip-collection'] ||= HipCollection.new(parent_instance: self, create_children: @create_children) end class ThirdPartyVpnClients < XML::ConfigClass def has_multiple_values? true end def _section :'third-party-vpn-clients' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "regex"=>".*", "maxlen"=>"63"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ThirdPartyVpnClients def third_party_vpn_clients if @create_children @subclasses['third-party-vpn-clients'] ||= ThirdPartyVpnClients.new(parent_instance: self, create_children: @create_children) else ThirdPartyVpnClients.new(parent_instance: self) end end class AgentConfig < ConfigClass def has_multiple_values? false end def _section :'agent-config' end @props={} end # class AgentConfig def agent_config @subclasses['agent-config'] ||= AgentConfig.new(parent_instance: self, create_children: @create_children) end class GpAppConfig < ConfigClass def has_multiple_values? false end def _section :'gp-app-config' end class Config < XML::ConfigClass def has_multiple_values? true end def _section :'config' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Value < XML::ConfigClass def has_multiple_values? true end def _section :'value' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"174762", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dynamic-schema/gp-app-config/config/entry[@name='$config_name']/value/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Value def value if @create_children @subclasses['value'] ||= Value.new(parent_instance: self, create_children: @create_children) else Value.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "regex"=>".*", "maxlen"=>"127", "autocomplete"=>"yes", "memberof"=> ["##/predefined/dynamic-schema/gp-app-config/config/entry/@name"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Config def config if @create_children @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) else Config.new(parent_instance: self) end end @props={} end # class GpAppConfig def gp_app_config @subclasses['gp-app-config'] ||= GpAppConfig.new(parent_instance: self, create_children: @create_children) end class Os < XML::ConfigClass def has_multiple_values? true end def _section :'os' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Os def os if @create_children @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) else Os.new(parent_instance: self) end end class ClientCertificate < XML::ConfigClass def has_multiple_values? true end def _section :'client-certificate' end @props={"local"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Select Client Certificate", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "scep"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/scep/entry/@name", "#config/shared/scep/entry/@name"]}} # Select Client Certificate def local prop_get('local') end # Select Client Certificate def local=(val) prop_set('local', val) end def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end end # class ClientCertificate def client_certificate if @create_children @subclasses['client-certificate'] ||= ClientCertificate.new(parent_instance: self, create_children: @create_children) else ClientCertificate.new(parent_instance: self) end end class AuthenticationOverride < ConfigClass def has_multiple_values? false end def _section :'authentication-override' end class AcceptCookie < ConfigClass def has_multiple_values? false end def _section :'accept-cookie' end class CookieLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'cookie-lifetime' end @props={"lifetime-in-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"365", "default"=>"365", "optional"=>"yes", "help-string"=>"Cookie lifetime in days", "uiHint-fieldLabel"=>"Days"}, "lifetime-in-hours"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"72", "default"=>"24", "optional"=>"yes", "help-string"=>"Cookie lifetime in hours", "uiHint-fieldLabel"=>"Hours"}, "lifetime-in-minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"59", "default"=>"5", "optional"=>"yes", "help-string"=>"Cookie lifetime in minutes", "uiHint-fieldLabel"=>"Minutes"}} # Cookie lifetime in days def lifetime_in_days prop_get('lifetime-in-days') end # Cookie lifetime in days def lifetime_in_days=(val) prop_set('lifetime-in-days', val) end # Cookie lifetime in hours def lifetime_in_hours prop_get('lifetime-in-hours') end # Cookie lifetime in hours def lifetime_in_hours=(val) prop_set('lifetime-in-hours', val) end # Cookie lifetime in minutes def lifetime_in_minutes prop_get('lifetime-in-minutes') end # Cookie lifetime in minutes def lifetime_in_minutes=(val) prop_set('lifetime-in-minutes', val) end end # class CookieLifetime def cookie_lifetime if @create_children @subclasses['cookie-lifetime'] ||= CookieLifetime.new(parent_instance: self, create_children: @create_children) else CookieLifetime.new(parent_instance: self) end end @props={} end # class AcceptCookie def accept_cookie @subclasses['accept-cookie'] ||= AcceptCookie.new(parent_instance: self, create_children: @create_children) end @props={"generate-cookie"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Generate cookie for authentication override"}, "cookie-encrypt-decrypt-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Certificate to Encrypt/Decrypt Cookie", "maxlen"=>"255", "uiHint-fieldLabel"=>"Certificate to Encrypt/Decrypt cookie", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # Generate cookie for authentication override def generate_cookie prop_get('generate-cookie') end # Generate cookie for authentication override def generate_cookie=(val) prop_set('generate-cookie', val) end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert prop_get('cookie-encrypt-decrypt-cert') end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert=(val) prop_set('cookie-encrypt-decrypt-cert', val) end end # class AuthenticationOverride def authentication_override @subclasses['authentication-override'] ||= AuthenticationOverride.new(parent_instance: self, create_children: @create_children) end @props={"save-user-credentials"=> {"node-type"=>"element", "type"=>"enum", "default"=>"1", "optional"=>"yes", "help-string"=>"Save User Credentials", "enum"=> [{"value"=>"0", "help-string"=>"No"}, {"value"=>"1", "help-string"=>"Yes"}, {"value"=>"2", "help-string"=>"Save Username Only"}, {"value"=>"3", "help-string"=>"Only with User Fingerprint"}]}, "portal-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Portal Authentication OTP"}, "internal-gateway-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Internal Gateway Authentication OTP"}, "auto-discovery-external-gateway-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Auto Discovery External Gateway Authentication OTP"}, "manual-only-gateway-2fa"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Manual Only External Gateway Authentication OTP"}, "@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect client configurations"}, "refresh-config"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Enable portal config refresh"}, "mdm-address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "regex"=>"^([a-zA-Z0-9._-])+$", "optional"=>"yes", "help-string"=>"IP address or hostname for GlobalProtect MDM server"}, "mdm-enrollment-port"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"443", "help-string"=>"MDM enrollment port", "enum"=>[{"value"=>"443"}, {"value"=>"7443"}, {"value"=>"8443"}]}} # Save User Credentials def save_user_credentials prop_get('save-user-credentials') end # Save User Credentials def save_user_credentials=(val) prop_set('save-user-credentials', val) end # Portal Authentication OTP def portal_2fa prop_get('portal-2fa') end # Portal Authentication OTP def portal_2fa=(val) prop_set('portal-2fa', val) end # Internal Gateway Authentication OTP def internal_gateway_2fa prop_get('internal-gateway-2fa') end # Internal Gateway Authentication OTP def internal_gateway_2fa=(val) prop_set('internal-gateway-2fa', val) end # Auto Discovery External Gateway Authentication OTP def auto_discovery_external_gateway_2fa prop_get('auto-discovery-external-gateway-2fa') end # Auto Discovery External Gateway Authentication OTP def auto_discovery_external_gateway_2fa=(val) prop_set('auto-discovery-external-gateway-2fa', val) end # Manual Only External Gateway Authentication OTP def manual_only_gateway_2fa prop_get('manual-only-gateway-2fa') end # Manual Only External Gateway Authentication OTP def manual_only_gateway_2fa=(val) prop_set('manual-only-gateway-2fa', val) end # GlobalProtect client configurations def name prop_get('@name') end # Enable portal config refresh def refresh_config prop_get('refresh-config') end # Enable portal config refresh def refresh_config=(val) prop_set('refresh-config', val) end # IP address or hostname for GlobalProtect MDM server def mdm_address prop_get('mdm-address') end # IP address or hostname for GlobalProtect MDM server def mdm_address=(val) prop_set('mdm-address', val) end # MDM enrollment port def mdm_enrollment_port prop_get('mdm-enrollment-port') end # MDM enrollment port def mdm_enrollment_port=(val) prop_set('mdm-enrollment-port', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Configs def configs if @create_children @subclasses['configs'] ||= Configs.new(parent_instance: self, create_children: @create_children) else Configs.new(parent_instance: self) end end @props={"agent-user-override-key"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "skip-fips-chk"=>"yes", "minlen"=>"1", "maxlen"=>"4", "help-string"=>"Agent user override ticket key"}} # Agent user override ticket key def agent_user_override_key prop_get('agent-user-override-key') end # Agent user override ticket key def agent_user_override_key=(val) prop_set('agent-user-override-key', val) end end # class ClientConfig def client_config @subclasses['client-config'] ||= ClientConfig.new(parent_instance: self, create_children: @create_children) end class SatelliteConfig < ConfigClass def has_multiple_values? false end def _section :'satellite-config' end class RootCa < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)]/@name"], "multi-types"=>{"string"=>{"maxlen"=>"255"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCa def root_ca if @create_children @subclasses['root-ca'] ||= RootCa.new(parent_instance: self, create_children: @create_children) else RootCa.new(parent_instance: self) end end class ClientCertificate < XML::ConfigClass def has_multiple_values? true end def _section :'client-certificate' end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"issuing-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Issuing certificate to issue GlobalProtect satellite certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='yes']/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}, "ocsp-responder"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"OCSP responder", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ocsp-responder/entry/@name|#config/shared/ocsp-responder/entry/@name"]}, "certificate-life-time"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"7", "max"=>"365", "default"=>"7", "help-string"=> "Issued GlobalProtect satellite certificate life time in days"}, "certificate-renewal-period"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"3", "max"=>"30", "default"=>"3", "help-string"=> "GlobalProtect satellite certificate renewal period in days"}} # Issuing certificate to issue GlobalProtect satellite certificate def issuing_certificate prop_get('issuing-certificate') end # Issuing certificate to issue GlobalProtect satellite certificate def issuing_certificate=(val) prop_set('issuing-certificate', val) end # OCSP responder def ocsp_responder prop_get('ocsp-responder') end # OCSP responder def ocsp_responder=(val) prop_set('ocsp-responder', val) end # Issued GlobalProtect satellite certificate life time in days def certificate_life_time prop_get('certificate-life-time') end # Issued GlobalProtect satellite certificate life time in days def certificate_life_time=(val) prop_set('certificate-life-time', val) end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period prop_get('certificate-renewal-period') end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period=(val) prop_set('certificate-renewal-period', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/scep/entry/@name", "#config/shared/scep/entry/@name"]}, "certificate-renewal-period"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"3", "max"=>"30", "default"=>"3", "help-string"=> "GlobalProtect satellite certificate renewal period in days"}} def scep prop_get('scep') end def scep=(val) prop_set('scep', val) end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period prop_get('certificate-renewal-period') end # GlobalProtect satellite certificate renewal period in days def certificate_renewal_period=(val) prop_set('certificate-renewal-period', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class ClientCertificate def client_certificate if @create_children @subclasses['client-certificate'] ||= ClientCertificate.new(parent_instance: self, create_children: @create_children) else ClientCertificate.new(parent_instance: self) end end class Configs < XML::ConfigClass def has_multiple_values? true end def _section :'configs' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"63", "regex"=>"^[0-9A-F]+$", "help-string"=>"GlobalProtect satellite pan device serial number"}} # GlobalProtect satellite pan device serial number def member prop_get('member') end # GlobalProtect satellite pan device serial number def member=(val) prop_set('member', val) end end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any", "help-string"=>"any user"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class Gateways < XML::ConfigClass def has_multiple_values? true end def _section :'gateways' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv4", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"100", "help-string"=>"IPv6", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 def ipv4 prop_get('ipv4') end # IPv4 def ipv4=(val) prop_set('ipv4', val) end # IPv6 def ipv6 prop_get('ipv6') end # IPv6 def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"description of the gateway"}, "fqdn"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "loose-membership"=>"yes", "minlen"=>"0", "maxlen"=>"255", "regex"=>"^([$:/a-zA-Z0-9._-])+$", "help-string"=>"fqdn", "autocomplete"=>"yes", "memberof"=>["#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "ipv6-preferred"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"IPv6 Preferred"}, "priority"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"25", "help-string"=>"Priority of GlobalProtect gateway"}} # description of the gateway def name prop_get('@name') end # fqdn def fqdn prop_get('fqdn') end # fqdn def fqdn=(val) prop_set('fqdn', val) end # IPv6 Preferred def ipv6_preferred prop_get('ipv6-preferred') end # IPv6 Preferred def ipv6_preferred=(val) prop_set('ipv6-preferred', val) end # Priority of GlobalProtect gateway def priority prop_get('priority') end # Priority of GlobalProtect gateway def priority=(val) prop_set('priority', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Gateways def gateways if @create_children @subclasses['gateways'] ||= Gateways.new(parent_instance: self, create_children: @create_children) else Gateways.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect satellite config rule"}, "config-refresh-interval"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"48", "default"=>"24", "help-string"=> "GlobalProtect satellite configuration refresh interval in hours"}} # GlobalProtect satellite config rule def name prop_get('@name') end # GlobalProtect satellite configuration refresh interval in hours def config_refresh_interval prop_get('config-refresh-interval') end # GlobalProtect satellite configuration refresh interval in hours def config_refresh_interval=(val) prop_set('config-refresh-interval', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Configs def configs if @create_children @subclasses['configs'] ||= Configs.new(parent_instance: self, create_children: @create_children) else Configs.new(parent_instance: self) end end @props={} end # class SatelliteConfig def satellite_config @subclasses['satellite-config'] ||= SatelliteConfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [ 0-9a-zA-Z._-]"}} # alphanumeric string begin with letter: [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectPortal def global_protect_portal if @create_children @subclasses['global-protect-portal'] ||= GlobalProtectPortal.new(parent_instance: self, create_children: @create_children) else GlobalProtectPortal.new(parent_instance: self) end end class GlobalProtectGateway < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RemoteUserTunnelConfigs < XML::ConfigClass def has_multiple_values? true end def _section :'remote-user-tunnel-configs' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SourceUser < XML::ConfigClass def has_multiple_values? true end def _section :'source-user' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "loose-membership"=>"yes", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/local-user-database/user/entry/@name", "#myentry(vsys)/local-user-database/user-group/entry/@name", "#myentry(vsys)/dynamic-user-group/entry/@name", "#config/shared/local-user-database/user/entry/@name", "#config/shared/local-user-database/user-group/entry/@name", "#config/shared/dynamic-user-group/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"1023", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"any", "help-string"=>"any user"}, {"value"=>"pre-logon", "help-string"=>"prelogon client machine"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SourceUser def source_user if @create_children @subclasses['source-user'] ||= SourceUser.new(parent_instance: self, create_children: @create_children) else SourceUser.new(parent_instance: self) end end class AuthenticationOverride < ConfigClass def has_multiple_values? false end def _section :'authentication-override' end class AcceptCookie < ConfigClass def has_multiple_values? false end def _section :'accept-cookie' end class CookieLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'cookie-lifetime' end @props={"lifetime-in-days"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"365", "default"=>"365", "optional"=>"yes", "help-string"=>"Cookie lifetime in days", "uiHint-fieldLabel"=>"Days"}, "lifetime-in-hours"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"72", "default"=>"24", "optional"=>"yes", "help-string"=>"Cookie lifetime in hours", "uiHint-fieldLabel"=>"Hours"}, "lifetime-in-minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"59", "default"=>"5", "optional"=>"yes", "help-string"=>"Cookie lifetime in minutes", "uiHint-fieldLabel"=>"Minutes"}} # Cookie lifetime in days def lifetime_in_days prop_get('lifetime-in-days') end # Cookie lifetime in days def lifetime_in_days=(val) prop_set('lifetime-in-days', val) end # Cookie lifetime in hours def lifetime_in_hours prop_get('lifetime-in-hours') end # Cookie lifetime in hours def lifetime_in_hours=(val) prop_set('lifetime-in-hours', val) end # Cookie lifetime in minutes def lifetime_in_minutes prop_get('lifetime-in-minutes') end # Cookie lifetime in minutes def lifetime_in_minutes=(val) prop_set('lifetime-in-minutes', val) end end # class CookieLifetime def cookie_lifetime if @create_children @subclasses['cookie-lifetime'] ||= CookieLifetime.new(parent_instance: self, create_children: @create_children) else CookieLifetime.new(parent_instance: self) end end @props={} end # class AcceptCookie def accept_cookie @subclasses['accept-cookie'] ||= AcceptCookie.new(parent_instance: self, create_children: @create_children) end @props={"generate-cookie"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Generate cookie for authentication override"}, "cookie-encrypt-decrypt-cert"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Certificate to Encrypt/Decrypt Cookie", "maxlen"=>"255", "uiHint-fieldLabel"=>"Certificate to Encrypt/Decrypt cookie", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # Generate cookie for authentication override def generate_cookie prop_get('generate-cookie') end # Generate cookie for authentication override def generate_cookie=(val) prop_set('generate-cookie', val) end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert prop_get('cookie-encrypt-decrypt-cert') end # Certificate to Encrypt/Decrypt Cookie def cookie_encrypt_decrypt_cert=(val) prop_set('cookie-encrypt-decrypt-cert', val) end end # class AuthenticationOverride def authentication_override @subclasses['authentication-override'] ||= AuthenticationOverride.new(parent_instance: self, create_children: @create_children) end class Os < XML::ConfigClass def has_multiple_values? true end def _section :'os' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"any", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=>[{"value"=>"any"}]}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Os def os if @create_children @subclasses['os'] ||= Os.new(parent_instance: self, create_children: @create_children) else Os.new(parent_instance: self) end end class SourceAddress < ConfigClass def has_multiple_values? false end def _section :'source-address' end class Region < XML::ConfigClass def has_multiple_values? true end def _section :'region' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/predefined/region/entry/@name", "#myentry(vsys)/region/entry/@name", "#config/shared/region/entry/@name"], "multi-types"=>{"string"=>{"maxlen"=>"63"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Region def region if @create_children @subclasses['region'] ||= Region.new(parent_instance: self, create_children: @create_children) else Region.new(parent_instance: self) end end class IpAddress < XML::ConfigClass def has_multiple_values? true end def _section :'ip-address' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpAddress def ip_address if @create_children @subclasses['ip-address'] ||= IpAddress.new(parent_instance: self, create_children: @create_children) else IpAddress.new(parent_instance: self) end end @props={} end # class SourceAddress def source_address @subclasses['source-address'] ||= SourceAddress.new(parent_instance: self, create_children: @create_children) end class DnsServer < XML::ConfigClass def has_multiple_values? true end def _section :'dns-server' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"40", "help-string"=>"DNS server for client"}} # DNS server for client def member prop_get('member') end # DNS server for client def member=(val) prop_set('member', val) end end # class DnsServer def dns_server if @create_children @subclasses['dns-server'] ||= DnsServer.new(parent_instance: self, create_children: @create_children) else DnsServer.new(parent_instance: self) end end class DnsSuffix < XML::ConfigClass def has_multiple_values? true end def _section :'dns-suffix' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=> "^(([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]).)*([A-Za-z0-9]|[A-Za-z0-9-]*[A-Za-z0-9])+$", "help-string"=>"DNS suffix for client"}} # DNS suffix for client def member prop_get('member') end # DNS suffix for client def member=(val) prop_set('member', val) end end # class DnsSuffix def dns_suffix if @create_children @subclasses['dns-suffix'] ||= DnsSuffix.new(parent_instance: self, create_children: @create_children) else DnsSuffix.new(parent_instance: self) end end class IpPool < XML::ConfigClass def has_multiple_values? true end def _section :'ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IpPool def ip_pool if @create_children @subclasses['ip-pool'] ||= IpPool.new(parent_instance: self, create_children: @create_children) else IpPool.new(parent_instance: self) end end class SplitTunneling < ConfigClass def has_multiple_values? false end def _section :'split-tunneling' end class AccessRoute < XML::ConfigClass def has_multiple_values? true end def _section :'access-route' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask]/@name", "##/shared/address-group/entry[static]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AccessRoute def access_route if @create_children @subclasses['access-route'] ||= AccessRoute.new(parent_instance: self, create_children: @create_children) else AccessRoute.new(parent_instance: self) end end class ExcludeAccessRoute < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-access-route' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-netmask]/@name", "##/shared/address-group/entry[static]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeAccessRoute def exclude_access_route if @create_children @subclasses['exclude-access-route'] ||= ExcludeAccessRoute.new(parent_instance: self, create_children: @create_children) else ExcludeAccessRoute.new(parent_instance: self) end end class IncludeApplications < XML::ConfigClass def has_multiple_values? true end def _section :'include-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"511", "max-count"=>"200"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class IncludeApplications def include_applications if @create_children @subclasses['include-applications'] ||= IncludeApplications.new(parent_instance: self, create_children: @create_children) else IncludeApplications.new(parent_instance: self) end end class IncludeDomains < ConfigClass def has_multiple_values? false end def _section :'include-domains' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ports < XML::ConfigClass def has_multiple_values? true end def _section :'ports' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ports def ports if @create_children @subclasses['ports'] ||= Ports.new(parent_instance: self, create_children: @create_children) else Ports.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^\\*?([:/a-zA-Z0-9._\\.\\-])+$", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={} end # class IncludeDomains def include_domains @subclasses['include-domains'] ||= IncludeDomains.new(parent_instance: self, create_children: @create_children) end class ExcludeApplications < XML::ConfigClass def has_multiple_values? true end def _section :'exclude-applications' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"511", "max-count"=>"200"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class ExcludeApplications def exclude_applications if @create_children @subclasses['exclude-applications'] ||= ExcludeApplications.new(parent_instance: self, create_children: @create_children) else ExcludeApplications.new(parent_instance: self) end end class ExcludeDomains < ConfigClass def has_multiple_values? false end def _section :'exclude-domains' end class List < XML::ConfigClass def has_multiple_values? true end def _section :'list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ports < XML::ConfigClass def has_multiple_values? true end def _section :'ports' end @props={"member"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ports def ports if @create_children @subclasses['ports'] ||= Ports.new(parent_instance: self, create_children: @create_children) else Ports.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"255", "regex"=>"^\\*?([:/a-zA-Z0-9._\\.\\-])+$", "help-string"=>"Dotted domain name with optional wildcards"}} # Dotted domain name with optional wildcards def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class List def list if @create_children @subclasses['list'] ||= List.new(parent_instance: self, create_children: @create_children) else List.new(parent_instance: self) end end @props={} end # class ExcludeDomains def exclude_domains @subclasses['exclude-domains'] ||= ExcludeDomains.new(parent_instance: self, create_children: @create_children) end @props={} end # class SplitTunneling def split_tunneling @subclasses['split-tunneling'] ||= SplitTunneling.new(parent_instance: self, create_children: @create_children) end class AuthenticationServerIpPool < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-server-ip-pool' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=> ["##/shared/address/entry[ip-range or ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-range or ip-netmask]/@name"], "multi-types"=> {"ipspec"=>{"subnet-only"=>"yes"}, "iprangespec"=>{}, "string"=>{"maxlen"=>"63", "loose-membership"=>"yes"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class AuthenticationServerIpPool def authentication_server_ip_pool if @create_children @subclasses['authentication-server-ip-pool'] ||= AuthenticationServerIpPool.new(parent_instance: self, create_children: @create_children) else AuthenticationServerIpPool.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=> "GlobalProtect gateway remote user tunnel configuration name"}, "no-direct-access-to-local-network"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"No direct access to local network"}, "retrieve-framed-ip-address"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"retrieve framed ip address"}} # GlobalProtect gateway remote user tunnel configuration name def name prop_get('@name') end # No direct access to local network def no_direct_access_to_local_network prop_get('no-direct-access-to-local-network') end # No direct access to local network def no_direct_access_to_local_network=(val) prop_set('no-direct-access-to-local-network', val) end # retrieve framed ip address def retrieve_framed_ip_address prop_get('retrieve-framed-ip-address') end # retrieve framed ip address def retrieve_framed_ip_address=(val) prop_set('retrieve-framed-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class RemoteUserTunnelConfigs def remote_user_tunnel_configs if @create_children @subclasses['remote-user-tunnel-configs'] ||= RemoteUserTunnelConfigs.new(parent_instance: self, create_children: @create_children) else RemoteUserTunnelConfigs.new(parent_instance: self) end end class ClientAuth < XML::ConfigClass def has_multiple_values? true end def _section :'client-auth' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"GlobalProtect client authentication name"}, "os"=> {"node-type"=>"element", "type"=>"multiple", "default"=>"Any", "help-string"=>"Client OS", "autocomplete"=>"yes", "memberof"=> ["##/predefined/global-protect/global-protect-device/os/entry/@name"], "multi-types"=> {"string"=>{"maxlen"=>"31", "loose-membership"=>"yes"}, "enum"=> [{"value"=>"Any"}, {"value"=>"Satellite"}, {"value"=>"X-Auth", "help-string"=>"Third party IPSec clients"}]}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"authentication profile used for this GlobalProtect", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/authentication-profile/entry/@name", "#config/shared/authentication-profile/entry/@name", "#myentry(vsys)/authentication-sequence/entry/@name", "#config/shared/authentication-sequence/entry/@name"]}, "auto-retrieve-passcode"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "Automatically retrieve passcode from SoftToken application"}, "username-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Username", "optional"=>"yes", "help-string"=>"Username Label"}, "password-label"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"20", "default"=>"Password", "optional"=>"yes", "help-string"=>"Password Label"}, "authentication-message"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"256", "default"=>"Enter login credentials", "optional"=>"yes", "help-string"=>"Authentication Message"}, "user-credential-or-client-cert-required"=> {"node-type"=>"element", "type"=>"enum", "default"=>"no", "optional"=>"yes", "help-string"=> "Allow Authentication with User Credentials OR Client Certificate", "enum"=> [{"value"=>"no", "help-string"=>"No (User Credentials AND Client Certificate Required)"}, {"value"=>"yes", "help-string"=> "Yes (User Credentials OR Client Certificate Required)"}]}} # GlobalProtect client authentication name def name prop_get('@name') end # Client OS def os prop_get('os') end # Client OS def os=(val) prop_set('os', val) end # authentication profile used for this GlobalProtect def authentication_profile prop_get('authentication-profile') end # authentication profile used for this GlobalProtect def authentication_profile=(val) prop_set('authentication-profile', val) end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode prop_get('auto-retrieve-passcode') end # Automatically retrieve passcode from SoftToken application def auto_retrieve_passcode=(val) prop_set('auto-retrieve-passcode', val) end # Username Label def username_label prop_get('username-label') end # Username Label def username_label=(val) prop_set('username-label', val) end # Password Label def password_label prop_get('password-label') end # Password Label def password_label=(val) prop_set('password-label', val) end # Authentication Message def authentication_message prop_get('authentication-message') end # Authentication Message def authentication_message=(val) prop_set('authentication-message', val) end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required prop_get('user-credential-or-client-cert-required') end # Allow Authentication with User Credentials OR Client Certificate def user_credential_or_client_cert_required=(val) prop_set('user-credential-or-client-cert-required', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientAuth def client_auth if @create_children @subclasses['client-auth'] ||= ClientAuth.new(parent_instance: self, create_children: @create_children) else ClientAuth.new(parent_instance: self) end end class LocalAddress < ConfigClass def has_multiple_values? false end def _section :'local-address' end class Ip < ConfigClass def has_multiple_values? false end def _section :'ip' end @props={"ipv4"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"IPv4 addresses", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ip/entry/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/$ifname/ip/entry/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ip/entry/@name", "#myentry(devices)/network/interface/ethernet/entry[@name='$ifname']/layer3/pppoe/static-address/ip", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/*/entry[@name='$ifname']/layer3/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/entry/layer3/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/$ifname/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(devices)/network/interface/*/units/entry[@name='$ifname']/ipv6/address/entry[not(anycast) and not(prefix) and not(enable-on-interface='no')]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/ip-netmask]/@name"]}} # IPv4 addresses def ipv4 prop_get('ipv4') end # IPv4 addresses def ipv4=(val) prop_set('ipv4', val) end # IPv6 address def ipv6 prop_get('ipv6') end # IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class Ip def ip @subclasses['ip'] ||= Ip.new(parent_instance: self, create_children: @create_children) end class FloatingIp < ConfigClass def has_multiple_values? false end def _section :'floating-ip' end @props={"ipv4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Floating IPv4 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ip/entry[floating]/@name"]}, "ipv6"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"63", "help-string"=>"Floating IPv6 address", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name", "#config/devices/entry/deviceconfig/high-availability/group/mode/active-active/virtual-address/entry[@name='$ifname']/ipv6/entry[floating]/@name"]}} # Floating IPv4 address def ipv4 prop_get('ipv4') end # Floating IPv4 address def ipv4=(val) prop_set('ipv4', val) end # Floating IPv6 address def ipv6 prop_get('ipv6') end # Floating IPv6 address def ipv6=(val) prop_set('ipv6', val) end end # class FloatingIp def floating_ip @subclasses['floating-ip'] ||= FloatingIp.new(parent_instance: self, create_children: @create_children) end @props={"ip-address-family"=> {"node-type"=>"element", "type"=>"enum", "default"=>"ipv4", "optional"=>"yes", "help-string"=>"specify the family of the local address", "enum"=> [{"value"=>"ipv4", "help-string"=>"IPv4 Only"}, {"value"=>"ipv6", "help-string"=>"IPv6 Only"}, {"value"=>"ipv4_ipv6", "help-string"=>"IPv4 and IPv6"}]}, "interface"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"local gateway end-point", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/interface/ethernet/entry[layer3 and not(layer3/pppoe) and not(layer3/dhcp-client) and not(layer3/decrypt-forward = 'yes')]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/pppoe]/@name", "#myentry(devices)/network/interface/ethernet/entry[layer3/dhcp-client]/@name", "#myentry(devices)/network/interface/ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry[layer3]/@name", "#myentry(devices)/network/interface/aggregate-ethernet/entry/layer3/units/entry/@name", "#myentry(devices)/network/interface/vlan/units/entry/@name", "string('vlan')", "#myentry(devices)/network/interface/loopback/units/entry/@name", "string('loopback')"]}} # specify the family of the local address def ip_address_family prop_get('ip-address-family') end # specify the family of the local address def ip_address_family=(val) prop_set('ip-address-family', val) end # local gateway end-point def interface prop_get('interface') end # local gateway end-point def interface=(val) prop_set('interface', val) end end # class LocalAddress def local_address @subclasses['local-address'] ||= LocalAddress.new(parent_instance: self, create_children: @create_children) end class SecurityRestrictions < ConfigClass def has_multiple_values? false end def _section :'security-restrictions' end class SourceIpEnforcement < ConfigClass def has_multiple_values? false end def _section :'source-ip-enforcement' end class Default < ConfigClass def has_multiple_values? false end def _section :'default' end @props={} end # class Default def default @subclasses['default'] ||= Default.new(parent_instance: self, create_children: @create_children) end class Custom < ConfigClass def has_multiple_values? false end def _section :'custom' end @props={"source-ipv4-netmask"=> {"node-type"=>"element", "help-string"=>"Source IPv4 Netmask", "type"=>"rangedint", "max"=>"32", "min"=>"0"}, "source-ipv6-netmask"=> {"node-type"=>"element", "help-string"=>"Source IPv6 Netmask", "type"=>"rangedint", "max"=>"128", "min"=>"0"}} # Source IPv4 Netmask def source_ipv4_netmask prop_get('source-ipv4-netmask') end # Source IPv4 Netmask def source_ipv4_netmask=(val) prop_set('source-ipv4-netmask', val) end # Source IPv6 Netmask def source_ipv6_netmask prop_get('source-ipv6-netmask') end # Source IPv6 Netmask def source_ipv6_netmask=(val) prop_set('source-ipv6-netmask', val) end end # class Custom def custom @subclasses['custom'] ||= Custom.new(parent_instance: self, create_children: @create_children) end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Allow Authentication Cookie Usage Only"}} # Allow Authentication Cookie Usage Only def enable prop_get('enable') end # Allow Authentication Cookie Usage Only def enable=(val) prop_set('enable', val) end end # class SourceIpEnforcement def source_ip_enforcement @subclasses['source-ip-enforcement'] ||= SourceIpEnforcement.new(parent_instance: self, create_children: @create_children) end @props={"disallow-automatic-restoration"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Disallow Automatic Restoration of SSL VPN"}} # Disallow Automatic Restoration of SSL VPN def disallow_automatic_restoration prop_get('disallow-automatic-restoration') end # Disallow Automatic Restoration of SSL VPN def disallow_automatic_restoration=(val) prop_set('disallow-automatic-restoration', val) end end # class SecurityRestrictions def security_restrictions @subclasses['security-restrictions'] ||= SecurityRestrictions.new(parent_instance: self, create_children: @create_children) end class Roles < XML::ConfigClass def has_multiple_values? true end def _section :'roles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class ClientMaxBandwidth < ConfigClass def has_multiple_values? false end def _section :'client-max-bandwidth' end @props={"client-to-gateway"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"1", "help-string"=>"client's max sending bandwidth through VPN in mbps"}, "gateway-to-client"=> {"node-type"=>"element", "type"=>"float", "optional"=>"yes", "min"=>"0", "max"=>"100", "default"=>"1", "help-string"=>"client's max receiving bandwidth through VPN in mbps"}} # client's max sending bandwidth through VPN in mbps def client_to_gateway prop_get('client-to-gateway') end # client's max sending bandwidth through VPN in mbps def client_to_gateway=(val) prop_set('client-to-gateway', val) end # client's max receiving bandwidth through VPN in mbps def gateway_to_client prop_get('gateway-to-client') end # client's max receiving bandwidth through VPN in mbps def gateway_to_client=(val) prop_set('gateway-to-client', val) end end # class ClientMaxBandwidth def client_max_bandwidth @subclasses['client-max-bandwidth'] ||= ClientMaxBandwidth.new(parent_instance: self, create_children: @create_children) end class LoginLifetime < XML::ConfigClass def has_multiple_values? true end def _section :'login-lifetime' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"43200", "min"=>"120"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"720", "min"=>"2"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"30", "min"=>"1", "default"=>"30"}} # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class LoginLifetime def login_lifetime if @create_children @subclasses['login-lifetime'] ||= LoginLifetime.new(parent_instance: self, create_children: @create_children) else LoginLifetime.new(parent_instance: self) end end class InactivityLogout < XML::ConfigClass def has_multiple_values? true end def _section :'inactivity-logout' end @props={"minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"43200", "min"=>"120"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"720", "min"=>"2", "default"=>"3"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"30", "min"=>"1"}} # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class InactivityLogout def inactivity_logout if @create_children @subclasses['inactivity-logout'] ||= InactivityLogout.new(parent_instance: self, create_children: @create_children) else InactivityLogout.new(parent_instance: self) end end class DisconnectOnIdle < XML::ConfigClass def has_multiple_values? true end def _section :'disconnect-on-idle' end @props={"minutes"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"5", "max"=>"43200", "default"=>"180", "help-string"=>"specify disconnect on idle in minutes"}} # specify disconnect on idle in minutes def minutes prop_get('minutes') end # specify disconnect on idle in minutes def minutes=(val) prop_set('minutes', val) end end # class DisconnectOnIdle def disconnect_on_idle if @create_children @subclasses['disconnect-on-idle'] ||= DisconnectOnIdle.new(parent_instance: self, create_children: @create_children) else DisconnectOnIdle.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"tunnel traffic group", "enum"=> [{"value"=>"default", "help-string"=>"the default group of GlobalProtect gateway users"}]}} # tunnel traffic group def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Roles def roles if @create_children @subclasses['roles'] ||= Roles.new(parent_instance: self, create_children: @create_children) else Roles.new(parent_instance: self) end end class HipNotification < XML::ConfigClass def has_multiple_values? true end def _section :'hip-notification' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class MatchMessage < ConfigClass def has_multiple_values? false end def _section :'match-message' end @props={"include-app-list"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Whether include matched application list in message", "uiHint-fieldLabel"=>"Include Mobile App List"}, "show-notification-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"system-tray-balloon", "help-string"=>"Show notification as", "enum"=>[{"value"=>"system-tray-balloon"}, {"value"=>"pop-up-message"}]}, "message"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"10239", "help-string"=>"Matched message"}} # Whether include matched application list in message def include_app_list prop_get('include-app-list') end # Whether include matched application list in message def include_app_list=(val) prop_set('include-app-list', val) end # Show notification as def show_notification_as prop_get('show-notification-as') end # Show notification as def show_notification_as=(val) prop_set('show-notification-as', val) end # Matched message def message prop_get('message') end # Matched message def message=(val) prop_set('message', val) end end # class MatchMessage def match_message @subclasses['match-message'] ||= MatchMessage.new(parent_instance: self, create_children: @create_children) end class NotMatchMessage < ConfigClass def has_multiple_values? false end def _section :'not-match-message' end @props={"show-notification-as"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"system-tray-balloon", "help-string"=>"Show notification as", "enum"=>[{"value"=>"system-tray-balloon"}, {"value"=>"pop-up-message"}]}, "message"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"10239", "help-string"=>"Not matched message"}} # Show notification as def show_notification_as prop_get('show-notification-as') end # Show notification as def show_notification_as=(val) prop_set('show-notification-as', val) end # Not matched message def message prop_get('message') end # Not matched message def message=(val) prop_set('message', val) end end # class NotMatchMessage def not_match_message @subclasses['not-match-message'] ||= NotMatchMessage.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"hip object name", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/profiles/hip-profiles/entry/@name", "#config/shared/profiles/hip-profiles/entry/@name", "##/predefined/profiles/hip-profiles/entry/@name", "##/shared/profiles/hip-profiles/entry/@name", "#myentry(vsys)/profiles/hip-objects/entry/@name", "#config/shared/profiles/hip-objects/entry/@name", "##/predefined/profiles/hip-objects/entry/@name", "##/shared/profiles/hip-objects/entry/@name"]}} # hip object name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HipNotification def hip_notification if @create_children @subclasses['hip-notification'] ||= HipNotification.new(parent_instance: self, create_children: @create_children) else HipNotification.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "loose-membership"=>"yes", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"tunnel interface or name"}, "remote-user-tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"GlobalProtect user tunnel", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/tunnel/global-protect-gateway/entry/tunnel-interface", "#myentry(devices)/network/tunnel/global-protect-gateway/entry/tunnel-interface"]}, "ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/ssl-tls-service-profile/entry/@name", "#config/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["#myentry(vsys)/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "satellite-tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"31", "help-string"=>"GlobalProtect satellite tunnel", "autocomplete"=>"yes", "memberof"=> ["#myentry(devices)/network/tunnel/global-protect-site-to-site/entry/tunnel-interface", "#myentry(devices)/network/tunnel/global-protect-site-to-site/entry/tunnel-interface"]}, "tunnel-mode"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Tunnel mode"}, "block-quarantined-devices"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"yes", "help-string"=>"Block login for quarantined devices"}, "log-success"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Log successful TLS handshakes"}, "log-fail"=> {"node-type"=>"element", "type"=>"bool", "default"=>"yes", "optional"=>"yes", "help-string"=>"Log unsuccessful TLS handshakes"}, "log-setting"=> {"node-type"=>"element", "type"=>"string", "no-default"=>"yes", "maxlen"=>"63", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/profiles/entry/@name", "#myentry(vsys)/log-settings/profiles/entry/@name"]}} # tunnel interface or name def name prop_get('@name') end # GlobalProtect user tunnel def remote_user_tunnel prop_get('remote-user-tunnel') end # GlobalProtect user tunnel def remote_user_tunnel=(val) prop_set('remote-user-tunnel', val) end # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # GlobalProtect satellite tunnel def satellite_tunnel prop_get('satellite-tunnel') end # GlobalProtect satellite tunnel def satellite_tunnel=(val) prop_set('satellite-tunnel', val) end # Tunnel mode def tunnel_mode prop_get('tunnel-mode') end # Tunnel mode def tunnel_mode=(val) prop_set('tunnel-mode', val) end # Block login for quarantined devices def block_quarantined_devices prop_get('block-quarantined-devices') end # Block login for quarantined devices def block_quarantined_devices=(val) prop_set('block-quarantined-devices', val) end # Log successful TLS handshakes def log_success prop_get('log-success') end # Log successful TLS handshakes def log_success=(val) prop_set('log-success', val) end # Log unsuccessful TLS handshakes def log_fail prop_get('log-fail') end # Log unsuccessful TLS handshakes def log_fail=(val) prop_set('log-fail', val) end def log_setting prop_get('log-setting') end def log_setting=(val) prop_set('log-setting', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectGateway def global_protect_gateway if @create_children @subclasses['global-protect-gateway'] ||= GlobalProtectGateway.new(parent_instance: self, create_children: @create_children) else GlobalProtectGateway.new(parent_instance: self) end end class GlobalProtectMdm < XML::ConfigClass def has_multiple_values? true end def _section :'global-protect-mdm' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class RootCa < XML::ConfigClass def has_multiple_values? true end def _section :'root-ca' end @props={"member"=> {"node-type"=>"element", "type"=>"multiple", "autocomplete"=>"yes", "memberof"=>[], "multi-types"=>{"string"=>{"maxlen"=>"255"}}}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class RootCa def root_ca if @create_children @subclasses['root-ca'] ||= RootCa.new(parent_instance: self, create_children: @create_children) else RootCa.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "maxlen"=>"31", "help-string"=>"GlobalProtect MDM server name"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no"}, "host"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "regex"=>"^([$a-zA-Z0-9._:-])+$", "minlen"=>"1", "maxlen"=>"255", "help-string"=>"IP address or hostname for GlobalProtect MDM server", "autocomplete"=>"yes", "memberof"=> ["#myentry(template-stack)/variable/entry[type/ip-netmask]/@name", "#myentry(template-stack)/variable/entry[type/fqdn]/@name"]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "optional"=>"yes", "min"=>"1", "max"=>"65535", "default"=>"5008", "help-string"=>"GlobalProtect MDM server listening port"}, "client-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"SSL client certificate", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key]/@name", "#myentry(vsys)/certificate/entry[not(csr)][private-key]/@name"]}} # GlobalProtect MDM server name def name prop_get('@name') end def disabled prop_get('disabled') end def disabled=(val) prop_set('disabled', val) end # IP address or hostname for GlobalProtect MDM server def host prop_get('host') end # IP address or hostname for GlobalProtect MDM server def host=(val) prop_set('host', val) end # GlobalProtect MDM server listening port def port prop_get('port') end # GlobalProtect MDM server listening port def port=(val) prop_set('port', val) end # SSL client certificate def client_certificate prop_get('client-certificate') end # SSL client certificate def client_certificate=(val) prop_set('client-certificate', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class GlobalProtectMdm def global_protect_mdm if @create_children @subclasses['global-protect-mdm'] ||= GlobalProtectMdm.new(parent_instance: self, create_children: @create_children) else GlobalProtectMdm.new(parent_instance: self) end end class ClientlessApp < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application name"}, "application-home-url"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([A-Za-z0-9_\\.~!\\*'\\(\\);:@=\\+\\$,/\\?#%\\&-]|\\[|\\])+$", "maxlen"=>"4095", "help-string"=>"Home URL of application"}, "description"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"Description for application"}, "app-icon"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"180000", "optional"=>"yes", "help-string"=>"application icon"}} # clientless vpn application name def name prop_get('@name') end # Home URL of application def application_home_url prop_get('application-home-url') end # Home URL of application def application_home_url=(val) prop_set('application-home-url', val) end # Description for application def description prop_get('description') end # Description for application def description=(val) prop_set('description', val) end # application icon def app_icon prop_get('app-icon') end # application icon def app_icon=(val) prop_set('app-icon', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessApp def clientless_app if @create_children @subclasses['clientless-app'] ||= ClientlessApp.new(parent_instance: self, create_children: @create_children) else ClientlessApp.new(parent_instance: self) end end class ClientlessAppGroup < XML::ConfigClass def has_multiple_values? true end def _section :'clientless-app-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Members < XML::ConfigClass def has_multiple_values? true end def _section :'members' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "max-count"=>"200", "autocomplete"=>"yes", "memberof"=> ["#config/shared/global-protect/clientless-app/entry/@name", "#myentry(vsys)/global-protect/clientless-app/entry/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Members def members if @create_children @subclasses['members'] ||= Members.new(parent_instance: self, create_children: @create_children) else Members.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>".*", "maxlen"=>"31", "help-string"=>"clientless vpn application group name"}} # clientless vpn application group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ClientlessAppGroup def clientless_app_group if @create_children @subclasses['clientless-app-group'] ||= ClientlessAppGroup.new(parent_instance: self, create_children: @create_children) else ClientlessAppGroup.new(parent_instance: self) end end @props={} end # class GlobalProtect__36 def global_protect__36 @subclasses['global-protect__36'] ||= GlobalProtect__36.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"vsys name"}} # vsys name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Vsys def vsys if @create_children @subclasses['vsys'] ||= Vsys.new(parent_instance: self, create_children: @create_children) else Vsys.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"enum", "maxlen"=>"31", "help-string"=>"must be localhost.localdomain", "enum"=>[{"value"=>"localhost.localdomain"}]}} # must be localhost.localdomain def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "description"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"Description of template stack"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Description of template stack def description prop_get('description') end # Description of template stack def description=(val) prop_set('description', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TemplateStack def template_stack if @create_children @subclasses['template-stack'] ||= TemplateStack.new(parent_instance: self, create_children: @create_children) else TemplateStack.new(parent_instance: self) end end class LogCollector < XML::ConfigClass def has_multiple_values? true end def _section :'log-collector' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class AuthenticationSetting < ConfigClass def has_multiple_values? false end def _section :'authentication-setting' end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Permissions < XML::ConfigClass def has_multiple_values? true end def _section :'permissions' end class RoleBased < XML::ConfigClass def has_multiple_values? true end def _section :'role-based' end @props={"superuser"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}} def superuser prop_get('superuser') end def superuser=(val) prop_set('superuser', val) end end # class RoleBased def role_based if @create_children @subclasses['role-based'] ||= RoleBased.new(parent_instance: self, create_children: @create_children) else RoleBased.new(parent_instance: self) end end @props={} end # class Permissions def permissions if @create_children @subclasses['permissions'] ||= Permissions.new(parent_instance: self, create_children: @create_children) else Permissions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[a-zA-Z0-9_.-]+$", "maxlen"=>"31", "help-string"=>"alphanumeric value"}, "phash"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/authentication-profile/entry[method/radius]/@name", "##/shared/authentication-profile/entry[method/tacplus]/@name", "##/shared/authentication-profile/entry[method/ldap]/@name", "##/shared/authentication-sequence/entry/@name", "##/panorama/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-profile/entry[method/ldap]/@name", "##/panorama/authentication-sequence/entry/@name"]}, "password-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/mgt-config/password-profile/entry/@name", "##/panorama/mgt-config/password-profile/entry/@name"]}, "public-key__9"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"non-fips-mode", "optional"=>"yes", "minlen"=>"256", "maxlen"=>"4096", "help-string"=>"Public RSA"}, "public-key__10"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"fips-mode", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"4096", "help-string"=>"Public RSA/DSA"}} # alphanumeric value def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def password_profile prop_get('password-profile') end def password_profile=(val) prop_set('password-profile', val) end # Public RSA def public_key__9 prop_get('public-key__9') end # Public RSA def public_key__9=(val) prop_set('public-key__9', val) end # Public RSA/DSA def public_key__10 prop_get('public-key__10') end # Public RSA/DSA def public_key__10=(val) prop_set('public-key__10', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end class ImportedPanoramaAdminUsers < XML::ConfigClass def has_multiple_values? true end def _section :'imported-panorama-admin-users' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"imported-panorama-admin-users-completer", "help-string"=>"Imported Panorama admin user name", "autocomplete"=>"yes", "memberof"=>[]}} # Imported Panorama admin user name def member prop_get('member') end # Imported Panorama admin user name def member=(val) prop_set('member', val) end end # class ImportedPanoramaAdminUsers def imported_panorama_admin_users if @create_children @subclasses['imported-panorama-admin-users'] ||= ImportedPanoramaAdminUsers.new(parent_instance: self, create_children: @create_children) else ImportedPanoramaAdminUsers.new(parent_instance: self) end end class Api < ConfigClass def has_multiple_values? false end def _section :'api' end class Key < ConfigClass def has_multiple_values? false end def _section :'key' end @props={"lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"api key lifetime in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"525600"}, "enum"=>[{"value"=>"0", "help-string"=>"never"}]}}} # api key lifetime in minutes def lifetime prop_get('lifetime') end # api key lifetime in minutes def lifetime=(val) prop_set('lifetime', val) end end # class Key def key @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) end @props={} end # class Api def api @subclasses['api'] ||= Api.new(parent_instance: self, create_children: @create_children) end class AdminLockout < ConfigClass def has_multiple_values? false end def _section :'admin-lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "default"=>"10", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "default"=>"5", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class AdminLockout def admin_lockout @subclasses['admin-lockout'] ||= AdminLockout.new(parent_instance: self, create_children: @create_children) end class AdminSession < ConfigClass def has_multiple_values? false end def _section :'admin-session' end @props={"max-session-count__1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"4", "prune-on"=>"non-fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"720", "prune-on"=>"non-fips-mode", "help-string"=>"Set the maximum session time (60-1499 minutes)", "regex"=>"^(([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}, "max-session-count__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=>"Set the maximum session time (0, 60-1499 minutes)", "regex"=>"^((0)|([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}} # Set the maximum number of sessions administrators are allowed def max_session_count__1 prop_get('max-session-count__1') end # Set the maximum number of sessions administrators are allowed def max_session_count__1=(val) prop_set('max-session-count__1', val) end # Set the maximum session time (60-1499 minutes) def max_session_time__2 prop_get('max-session-time__2') end # Set the maximum session time (60-1499 minutes) def max_session_time__2=(val) prop_set('max-session-time__2', val) end # Set the maximum number of sessions administrators are allowed def max_session_count__3 prop_get('max-session-count__3') end # Set the maximum number of sessions administrators are allowed def max_session_count__3=(val) prop_set('max-session-count__3', val) end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4 prop_get('max-session-time__4') end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4=(val) prop_set('max-session-time__4', val) end end # class AdminSession def admin_session @subclasses['admin-session'] ||= AdminSession.new(parent_instance: self, create_children: @create_children) end @props={"idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"default administrative session idle timeout in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"1440", "help-string"=>"minutes"}, "enum"=>[{"value"=>"0", "help-string"=>"never timeout"}]}}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported.", "autocomplete"=>"yes", "memberof"=> ["##/panorama/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-sequence/entry/@name"]}} # default administrative session idle timeout in minutes def idle_timeout prop_get('idle-timeout') end # default administrative session idle timeout in minutes def idle_timeout=(val) prop_set('idle-timeout', val) end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported. def authentication_profile=(val) prop_set('authentication-profile', val) end end # class AuthenticationSetting def authentication_setting @subclasses['authentication-setting'] ||= AuthenticationSetting.new(parent_instance: self, create_children: @create_children) end class SecureConnServer < ConfigClass def has_multiple_values? false end def _section :'secure-conn-server' end class AuthorizationList < XML::ConfigClass def has_multiple_values? true end def _section :'authorization-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Identifier < XML::ConfigClass def has_multiple_values? true end def _section :'identifier' end class Subject < ConfigClass def has_multiple_values? false end def _section :'subject' end @props={"common-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject Common Name"}} # Subject Common Name def common_name prop_get('common-name') end # Subject Common Name def common_name=(val) prop_set('common-name', val) end end # class Subject def subject @subclasses['subject'] ||= Subject.new(parent_instance: self, create_children: @create_children) end class SubjectAltName < ConfigClass def has_multiple_values? false end def _section :'subject-alt-name' end @props={"ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"Subject alternate name IP"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject alternate name DNS"}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"Email address of the contact person"}} # Subject alternate name IP def ip prop_get('ip') end # Subject alternate name IP def ip=(val) prop_set('ip', val) end # Subject alternate name DNS def hostname prop_get('hostname') end # Subject alternate name DNS def hostname=(val) prop_set('hostname', val) end # Email address of the contact person def email prop_get('email') end # Email address of the contact person def email=(val) prop_set('email', val) end end # class SubjectAltName def subject_alt_name @subclasses['subject-alt-name'] ||= SubjectAltName.new(parent_instance: self, create_children: @create_children) end @props={} end # class Identifier def identifier if @create_children @subclasses['identifier'] ||= Identifier.new(parent_instance: self, create_children: @create_children) else Identifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthorizationList def authorization_list if @create_children @subclasses['authorization-list'] ||= AuthorizationList.new(parent_instance: self, create_children: @create_children) else AuthorizationList.new(parent_instance: self) end end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=>["##/panorama/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=>["##/panorama/certificate-profile/entry/@name"]}, "enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-server settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}, "disable-pre-defined-cert"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Disable connections using predefined certificates. Default setting: 'no'"}, "check-client-identity"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help"=> "Check if the Serial # in Subject common name of the client certificate is part of the user-configured managed device list. Default setting : no.", "optional"=>"yes"}, "check-authorization-list"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help"=> "Check the authorization table for permitting incoming client connections. Default setting : 'no'", "optional"=>"yes"}, "disconnect-wait-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"44640", "help-string"=> "Disconnect previously established connections on configuration change after wait time (in minutes, Min: 0(ASAP), Default: 1 min, Max: 44640 i.e 31 days)."}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Use the secure-server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure-server settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert prop_get('disable-pre-defined-cert') end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert=(val) prop_set('disable-pre-defined-cert', val) end def check_client_identity prop_get('check-client-identity') end def check_client_identity=(val) prop_set('check-client-identity', val) end def check_authorization_list prop_get('check-authorization-list') end def check_authorization_list=(val) prop_set('check-authorization-list', val) end # Disconnect previously established connections on configuration change after wait time (in minutes, Min: 0(ASAP), Default: 1 min, Max: 44640 i.e 31 days). def disconnect_wait_time prop_get('disconnect-wait-time') end # Disconnect previously established connections on configuration change after wait time (in minutes, Min: 0(ASAP), Default: 1 min, Max: 44640 i.e 31 days). def disconnect_wait_time=(val) prop_set('disconnect-wait-time', val) end end # class SecureConnServer def secure_conn_server @subclasses['secure-conn-server'] ||= SecureConnServer.new(parent_instance: self, create_children: @create_children) end class SecureConnClient < ConfigClass def has_multiple_values? false end def _section :'secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in management connections to Panorama and Log collectors", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/panorama/certificate-profile/entry/@name"]}} # Custom certificate used in management connections to Panorama and Log collectors def certificate prop_get('certificate') end # Custom certificate used in management connections to Panorama and Log collectors def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=>["#config/panorama/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=>["#config/panorama/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={"enable-secure-user-id-communication"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=> "Use the secure-client certificate settings for User Identification connections. Default setting : 'no'", "optional"=>"yes"}, "check-server-identity"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help"=> "Check server certificate Subject common name(IP/FQDN) with the configured panorama servers. Default setting: 'no'"}} # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication prop_get('enable-secure-user-id-communication') end # Use the secure-client certificate settings for User Identification connections. Default setting : 'no' def enable_secure_user_id_communication=(val) prop_set('enable-secure-user-id-communication', val) end def check_server_identity prop_get('check-server-identity') end def check_server_identity=(val) prop_set('check-server-identity', val) end end # class SecureConnClient def secure_conn_client @subclasses['secure-conn-client'] ||= SecureConnClient.new(parent_instance: self, create_children: @create_children) end class Deviceconfig < ConfigClass def has_multiple_values? false end def _section :'deviceconfig' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={} end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-userid-service"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-device-log-collection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-collector-group-communication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-syslog-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end def disable_userid_service prop_get('disable-userid-service') end def disable_userid_service=(val) prop_set('disable-userid-service', val) end def disable_device_log_collection prop_get('disable-device-log-collection') end def disable_device_log_collection=(val) prop_set('disable-device-log-collection', val) end def disable_collector_group_communication prop_get('disable-collector-group-communication') end def disable_collector_group_communication=(val) prop_set('disable-collector-group-communication', val) end def disable_syslog_forwarding prop_get('disable-syslog-forwarding') end def disable_syslog_forwarding=(val) prop_set('disable-syslog-forwarding', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class DnsSetting < ConfigClass def has_multiple_values? false end def _section :'dns-setting' end class Servers < ConfigClass def has_multiple_values? false end def _section :'servers' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Primary DNS server IP address"}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Secondary DNS server IP address"}} # Primary DNS server IP address def primary prop_get('primary') end # Primary DNS server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS server IP address def secondary prop_get('secondary') end # Secondary DNS server IP address def secondary=(val) prop_set('secondary', val) end end # class Servers def servers @subclasses['servers'] ||= Servers.new(parent_instance: self, create_children: @create_children) end @props={} end # class DnsSetting def dns_setting @subclasses['dns-setting'] ||= DnsSetting.new(parent_instance: self, create_children: @create_children) end class NtpServers < ConfigClass def has_multiple_values? false end def _section :'ntp-servers' end class PrimaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'primary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class PrimaryNtpServer def primary_ntp_server @subclasses['primary-ntp-server'] ||= PrimaryNtpServer.new(parent_instance: self, create_children: @create_children) end class SecondaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'secondary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class SecondaryNtpServer def secondary_ntp_server @subclasses['secondary-ntp-server'] ||= SecondaryNtpServer.new(parent_instance: self, create_children: @create_children) end @props={} end # class NtpServers def ntp_servers @subclasses['ntp-servers'] ||= NtpServers.new(parent_instance: self, create_children: @create_children) end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"-90.0", "max"=>"90.0", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"-180.0", "max"=>"180.0", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end class Eth1 < ConfigClass def has_multiple_values? false end def _section :'eth1' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={} end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-device-log-collection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-collector-group-communication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-syslog-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_device_log_collection prop_get('disable-device-log-collection') end def disable_device_log_collection=(val) prop_set('disable-device-log-collection', val) end def disable_collector_group_communication prop_get('disable-collector-group-communication') end def disable_collector_group_communication=(val) prop_set('disable-collector-group-communication', val) end def disable_syslog_forwarding prop_get('disable-syslog-forwarding') end def disable_syslog_forwarding=(val) prop_set('disable-syslog-forwarding', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Public IP address for the interface"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # Public IP address for the interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IPv6 address for the interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth1 def eth1 @subclasses['eth1'] ||= Eth1.new(parent_instance: self, create_children: @create_children) end class Eth2 < ConfigClass def has_multiple_values? false end def _section :'eth2' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={} end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-device-log-collection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-collector-group-communication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-syslog-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_device_log_collection prop_get('disable-device-log-collection') end def disable_device_log_collection=(val) prop_set('disable-device-log-collection', val) end def disable_collector_group_communication prop_get('disable-collector-group-communication') end def disable_collector_group_communication=(val) prop_set('disable-collector-group-communication', val) end def disable_syslog_forwarding prop_get('disable-syslog-forwarding') end def disable_syslog_forwarding=(val) prop_set('disable-syslog-forwarding', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Public IP address for the interface"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # Public IP address for the interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IPv6 address for the interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth2 def eth2 @subclasses['eth2'] ||= Eth2.new(parent_instance: self, create_children: @create_children) end class Eth3 < ConfigClass def has_multiple_values? false end def _section :'eth3' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={} end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-device-log-collection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-collector-group-communication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-syslog-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_device_log_collection prop_get('disable-device-log-collection') end def disable_device_log_collection=(val) prop_set('disable-device-log-collection', val) end def disable_collector_group_communication prop_get('disable-collector-group-communication') end def disable_collector_group_communication=(val) prop_set('disable-collector-group-communication', val) end def disable_syslog_forwarding prop_get('disable-syslog-forwarding') end def disable_syslog_forwarding=(val) prop_set('disable-syslog-forwarding', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Public IP address for the interface"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # Public IP address for the interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IPv6 address for the interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth3 def eth3 @subclasses['eth3'] ||= Eth3.new(parent_instance: self, create_children: @create_children) end class Eth4 < ConfigClass def has_multiple_values? false end def _section :'eth4' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={} end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-device-log-collection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-collector-group-communication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-syslog-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_device_log_collection prop_get('disable-device-log-collection') end def disable_device_log_collection=(val) prop_set('disable-device-log-collection', val) end def disable_collector_group_communication prop_get('disable-collector-group-communication') end def disable_collector_group_communication=(val) prop_set('disable-collector-group-communication', val) end def disable_syslog_forwarding prop_get('disable-syslog-forwarding') end def disable_syslog_forwarding=(val) prop_set('disable-syslog-forwarding', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}, {"value"=>"10Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Public IP address for the interface"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # Public IP address for the interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IPv6 address for the interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth4 def eth4 @subclasses['eth4'] ||= Eth4.new(parent_instance: self, create_children: @create_children) end class Eth5 < ConfigClass def has_multiple_values? false end def _section :'eth5' end class Type < ConfigClass def has_multiple_values? false end def _section :'type' end class Static < ConfigClass def has_multiple_values? false end def _section :'static' end @props={} end # class Static def static @subclasses['static'] ||= Static.new(parent_instance: self, create_children: @create_children) end class DhcpClient < ConfigClass def has_multiple_values? false end def _section :'dhcp-client' end @props={} end # class DhcpClient def dhcp_client @subclasses['dhcp-client'] ||= DhcpClient.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-device-log-collection"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-collector-group-communication"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-syslog-forwarding"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_device_log_collection prop_get('disable-device-log-collection') end def disable_device_log_collection=(val) prop_set('disable-device-log-collection', val) end def disable_collector_group_communication prop_get('disable-collector-group-communication') end def disable_collector_group_communication=(val) prop_set('disable-collector-group-communication', val) end def disable_syslog_forwarding prop_get('disable-syslog-forwarding') end def disable_syslog_forwarding=(val) prop_set('disable-syslog-forwarding', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}, {"value"=>"10Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"Public IP address for the interface"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # Public IP address for the interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IPv6 address for the interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth5 def eth5 @subclasses['eth5'] ||= Eth5.new(parent_instance: self, create_children: @create_children) end class UserIdSslAuth < ConfigClass def has_multiple_values? false end def _section :'user-id-ssl-auth' end @props={"certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"Profile for authenticating client certificates", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Profile for authenticating client certificates def certificate_profile prop_get('certificate-profile') end # Profile for authenticating client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end end # class UserIdSslAuth def user_id_ssl_auth @subclasses['user-id-ssl-auth'] ||= UserIdSslAuth.new(parent_instance: self, create_children: @create_children) end @props={"login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32"}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"32"}, "speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the management interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "syslog-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"client certificate for syslog", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "inbound-syslog-certificate"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=>"server certificate for syslog", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"IP address for the management interface"}, "public-ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Public IP address for the management interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the management interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 address for the management interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the management interface"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server (IP address or FQDN)"}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server 2 (IP address or FQDN)"}, "timezone"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"Africa/Abidjan"}, {"value"=>"Africa/Accra"}, {"value"=>"Africa/Addis_Ababa"}, {"value"=>"Africa/Algiers"}, {"value"=>"Africa/Asmara"}, {"value"=>"Africa/Asmera"}, {"value"=>"Africa/Bamako"}, {"value"=>"Africa/Bangui"}, {"value"=>"Africa/Banjul"}, {"value"=>"Africa/Bissau"}, {"value"=>"Africa/Blantyre"}, {"value"=>"Africa/Brazzaville"}, {"value"=>"Africa/Bujumbura"}, {"value"=>"Africa/Cairo"}, {"value"=>"Africa/Casablanca"}, {"value"=>"Africa/Ceuta"}, {"value"=>"Africa/Conakry"}, {"value"=>"Africa/Dakar"}, {"value"=>"Africa/Dar_es_Salaam"}, {"value"=>"Africa/Djibouti"}, {"value"=>"Africa/Douala"}, {"value"=>"Africa/El_Aaiun"}, {"value"=>"Africa/Freetown"}, {"value"=>"Africa/Gaborone"}, {"value"=>"Africa/Harare"}, {"value"=>"Africa/Johannesburg"}, {"value"=>"Africa/Kampala"}, {"value"=>"Africa/Khartoum"}, {"value"=>"Africa/Kigali"}, {"value"=>"Africa/Kinshasa"}, {"value"=>"Africa/Lagos"}, {"value"=>"Africa/Libreville"}, {"value"=>"Africa/Lome"}, {"value"=>"Africa/Luanda"}, {"value"=>"Africa/Lubumbashi"}, {"value"=>"Africa/Lusaka"}, {"value"=>"Africa/Malabo"}, {"value"=>"Africa/Maputo"}, {"value"=>"Africa/Maseru"}, {"value"=>"Africa/Mbabane"}, {"value"=>"Africa/Mogadishu"}, {"value"=>"Africa/Monrovia"}, {"value"=>"Africa/Nairobi"}, {"value"=>"Africa/Ndjamena"}, {"value"=>"Africa/Niamey"}, {"value"=>"Africa/Nouakchott"}, {"value"=>"Africa/Ouagadougou"}, {"value"=>"Africa/Porto-Novo"}, {"value"=>"Africa/Sao_Tome"}, {"value"=>"Africa/Timbuktu"}, {"value"=>"Africa/Tripoli"}, {"value"=>"Africa/Tunis"}, {"value"=>"Africa/Windhoek"}, {"value"=>"America/Adak"}, {"value"=>"America/Anchorage"}, {"value"=>"America/Anguilla"}, {"value"=>"America/Antigua"}, {"value"=>"America/Araguaina"}, {"value"=>"America/Argentina/Buenos_Aires"}, {"value"=>"America/Argentina/Catamarca"}, {"value"=>"America/Argentina/ComodRivadavia"}, {"value"=>"America/Argentina/Cordoba"}, {"value"=>"America/Argentina/Jujuy"}, {"value"=>"America/Argentina/La_Rioja"}, {"value"=>"America/Argentina/Mendoza"}, {"value"=>"America/Argentina/Rio_Gallegos"}, {"value"=>"America/Argentina/Salta"}, {"value"=>"America/Argentina/San_Juan"}, {"value"=>"America/Argentina/San_Luis"}, {"value"=>"America/Argentina/Tucuman"}, {"value"=>"America/Argentina/Ushuaia"}, {"value"=>"America/Aruba"}, {"value"=>"America/Asuncion"}, {"value"=>"America/Atikokan"}, {"value"=>"America/Atka"}, {"value"=>"America/Bahia"}, {"value"=>"America/Barbados"}, {"value"=>"America/Belem"}, {"value"=>"America/Belize"}, {"value"=>"America/Blanc-Sablon"}, {"value"=>"America/Boa_Vista"}, {"value"=>"America/Bogota"}, {"value"=>"America/Boise"}, {"value"=>"America/Buenos_Aires"}, {"value"=>"America/Cambridge_Bay"}, {"value"=>"America/Campo_Grande"}, {"value"=>"America/Cancun"}, {"value"=>"America/Caracas"}, {"value"=>"America/Catamarca"}, {"value"=>"America/Cayenne"}, {"value"=>"America/Cayman"}, {"value"=>"America/Chicago"}, {"value"=>"America/Chihuahua"}, {"value"=>"America/Coral_Harbour"}, {"value"=>"America/Cordoba"}, {"value"=>"America/Costa_Rica"}, {"value"=>"America/Cuiaba"}, {"value"=>"America/Curacao"}, {"value"=>"America/Danmarkshavn"}, {"value"=>"America/Dawson"}, {"value"=>"America/Dawson_Creek"}, {"value"=>"America/Denver"}, {"value"=>"America/Detroit"}, {"value"=>"America/Dominica"}, {"value"=>"America/Edmonton"}, {"value"=>"America/Eirunepe"}, {"value"=>"America/El_Salvador"}, {"value"=>"America/Ensenada"}, {"value"=>"America/Fortaleza"}, {"value"=>"America/Fort_Wayne"}, {"value"=>"America/Glace_Bay"}, {"value"=>"America/Godthab"}, {"value"=>"America/Goose_Bay"}, {"value"=>"America/Grand_Turk"}, {"value"=>"America/Grenada"}, {"value"=>"America/Guadeloupe"}, {"value"=>"America/Guatemala"}, {"value"=>"America/Guayaquil"}, {"value"=>"America/Guyana"}, {"value"=>"America/Halifax"}, {"value"=>"America/Havana"}, {"value"=>"America/Hermosillo"}, {"value"=>"America/Indiana/Indianapolis"}, {"value"=>"America/Indiana/Knox"}, {"value"=>"America/Indiana/Marengo"}, {"value"=>"America/Indiana/Petersburg"}, {"value"=>"America/Indianapolis"}, {"value"=>"America/Indiana/Tell_City"}, {"value"=>"America/Indiana/Vevay"}, {"value"=>"America/Indiana/Vincennes"}, {"value"=>"America/Indiana/Winamac"}, {"value"=>"America/Inuvik"}, {"value"=>"America/Iqaluit"}, {"value"=>"America/Jamaica"}, {"value"=>"America/Jujuy"}, {"value"=>"America/Juneau"}, {"value"=>"America/Kentucky/Louisville"}, {"value"=>"America/Kentucky/Monticello"}, {"value"=>"America/Knox_IN"}, {"value"=>"America/La_Paz"}, {"value"=>"America/Lima"}, {"value"=>"America/Los_Angeles"}, {"value"=>"America/Louisville"}, {"value"=>"America/Maceio"}, {"value"=>"America/Managua"}, {"value"=>"America/Manaus"}, {"value"=>"America/Marigot"}, {"value"=>"America/Martinique"}, {"value"=>"America/Mazatlan"}, {"value"=>"America/Mendoza"}, {"value"=>"America/Menominee"}, {"value"=>"America/Merida"}, {"value"=>"America/Mexico_City"}, {"value"=>"America/Miquelon"}, {"value"=>"America/Moncton"}, {"value"=>"America/Monterrey"}, {"value"=>"America/Montevideo"}, {"value"=>"America/Montreal"}, {"value"=>"America/Montserrat"}, {"value"=>"America/Nassau"}, {"value"=>"America/New_York"}, {"value"=>"America/Nipigon"}, {"value"=>"America/Nome"}, {"value"=>"America/Noronha"}, {"value"=>"America/North_Dakota/Center"}, {"value"=>"America/North_Dakota/New_Salem"}, {"value"=>"America/Panama"}, {"value"=>"America/Pangnirtung"}, {"value"=>"America/Paramaribo"}, {"value"=>"America/Phoenix"}, {"value"=>"America/Port-au-Prince"}, {"value"=>"America/Porto_Acre"}, {"value"=>"America/Port_of_Spain"}, {"value"=>"America/Porto_Velho"}, {"value"=>"America/Puerto_Rico"}, {"value"=>"America/Rainy_River"}, {"value"=>"America/Rankin_Inlet"}, {"value"=>"America/Recife"}, {"value"=>"America/Regina"}, {"value"=>"America/Resolute"}, {"value"=>"America/Rio_Branco"}, {"value"=>"America/Rosario"}, {"value"=>"America/Santarem"}, {"value"=>"America/Santiago"}, {"value"=>"America/Santo_Domingo"}, {"value"=>"America/Sao_Paulo"}, {"value"=>"America/Scoresbysund"}, {"value"=>"America/Shiprock"}, {"value"=>"America/St_Barthelemy"}, {"value"=>"America/St_Johns"}, {"value"=>"America/St_Kitts"}, {"value"=>"America/St_Lucia"}, {"value"=>"America/St_Thomas"}, {"value"=>"America/St_Vincent"}, {"value"=>"America/Swift_Current"}, {"value"=>"America/Tegucigalpa"}, {"value"=>"America/Thule"}, {"value"=>"America/Thunder_Bay"}, {"value"=>"America/Tijuana"}, {"value"=>"America/Toronto"}, {"value"=>"America/Tortola"}, {"value"=>"America/Vancouver"}, {"value"=>"America/Virgin"}, {"value"=>"America/Whitehorse"}, {"value"=>"America/Winnipeg"}, {"value"=>"America/Yakutat"}, {"value"=>"America/Yellowknife"}, {"value"=>"Antarctica/Casey"}, {"value"=>"Antarctica/Davis"}, {"value"=>"Antarctica/DumontDUrville"}, {"value"=>"Antarctica/Mawson"}, {"value"=>"Antarctica/McMurdo"}, {"value"=>"Antarctica/Palmer"}, {"value"=>"Antarctica/Rothera"}, {"value"=>"Antarctica/South_Pole"}, {"value"=>"Antarctica/Syowa"}, {"value"=>"Antarctica/Vostok"}, {"value"=>"Arctic/Longyearbyen"}, {"value"=>"Asia/Aden"}, {"value"=>"Asia/Almaty"}, {"value"=>"Asia/Amman"}, {"value"=>"Asia/Anadyr"}, {"value"=>"Asia/Aqtau"}, {"value"=>"Asia/Aqtobe"}, {"value"=>"Asia/Ashgabat"}, {"value"=>"Asia/Ashkhabad"}, {"value"=>"Asia/Baghdad"}, {"value"=>"Asia/Bahrain"}, {"value"=>"Asia/Baku"}, {"value"=>"Asia/Bangkok"}, {"value"=>"Asia/Beirut"}, {"value"=>"Asia/Bishkek"}, {"value"=>"Asia/Brunei"}, {"value"=>"Asia/Calcutta"}, {"value"=>"Asia/Choibalsan"}, {"value"=>"Asia/Chongqing"}, {"value"=>"Asia/Chungking"}, {"value"=>"Asia/Colombo"}, {"value"=>"Asia/Dacca"}, {"value"=>"Asia/Damascus"}, {"value"=>"Asia/Dhaka"}, {"value"=>"Asia/Dili"}, {"value"=>"Asia/Dubai"}, {"value"=>"Asia/Dushanbe"}, {"value"=>"Asia/Gaza"}, {"value"=>"Asia/Harbin"}, {"value"=>"Asia/Ho_Chi_Minh"}, {"value"=>"Asia/Hong_Kong"}, {"value"=>"Asia/Hovd"}, {"value"=>"Asia/Irkutsk"}, {"value"=>"Asia/Istanbul"}, {"value"=>"Asia/Jakarta"}, {"value"=>"Asia/Jayapura"}, {"value"=>"Asia/Jerusalem"}, {"value"=>"Asia/Kabul"}, {"value"=>"Asia/Kamchatka"}, {"value"=>"Asia/Karachi"}, {"value"=>"Asia/Kashgar"}, {"value"=>"Asia/Kathmandu"}, {"value"=>"Asia/Katmandu"}, {"value"=>"Asia/Kolkata"}, {"value"=>"Asia/Krasnoyarsk"}, {"value"=>"Asia/Kuala_Lumpur"}, {"value"=>"Asia/Kuching"}, {"value"=>"Asia/Kuwait"}, {"value"=>"Asia/Macao"}, {"value"=>"Asia/Macau"}, {"value"=>"Asia/Magadan"}, {"value"=>"Asia/Makassar"}, {"value"=>"Asia/Manila"}, {"value"=>"Asia/Muscat"}, {"value"=>"Asia/Nicosia"}, {"value"=>"Asia/Novokuznetsk"}, {"value"=>"Asia/Novosibirsk"}, {"value"=>"Asia/Omsk"}, {"value"=>"Asia/Oral"}, {"value"=>"Asia/Phnom_Penh"}, {"value"=>"Asia/Pontianak"}, {"value"=>"Asia/Pyongyang"}, {"value"=>"Asia/Qatar"}, {"value"=>"Asia/Qyzylorda"}, {"value"=>"Asia/Rangoon"}, {"value"=>"Asia/Riyadh"}, {"value"=>"Asia/Riyadh87"}, {"value"=>"Asia/Riyadh88"}, {"value"=>"Asia/Riyadh89"}, {"value"=>"Asia/Saigon"}, {"value"=>"Asia/Sakhalin"}, {"value"=>"Asia/Samarkand"}, {"value"=>"Asia/Seoul"}, {"value"=>"Asia/Shanghai"}, {"value"=>"Asia/Singapore"}, {"value"=>"Asia/Taipei"}, {"value"=>"Asia/Tashkent"}, {"value"=>"Asia/Tbilisi"}, {"value"=>"Asia/Tehran"}, {"value"=>"Asia/Tel_Aviv"}, {"value"=>"Asia/Thimbu"}, {"value"=>"Asia/Thimphu"}, {"value"=>"Asia/Tokyo"}, {"value"=>"Asia/Ujung_Pandang"}, {"value"=>"Asia/Ulaanbaatar"}, {"value"=>"Asia/Ulan_Bator"}, {"value"=>"Asia/Urumqi"}, {"value"=>"Asia/Vientiane"}, {"value"=>"Asia/Vladivostok"}, {"value"=>"Asia/Yakutsk"}, {"value"=>"Asia/Yekaterinburg"}, {"value"=>"Asia/Yerevan"}, {"value"=>"Atlantic/Azores"}, {"value"=>"Atlantic/Bermuda"}, {"value"=>"Atlantic/Canary"}, {"value"=>"Atlantic/Cape_Verde"}, {"value"=>"Atlantic/Faeroe"}, {"value"=>"Atlantic/Faroe"}, {"value"=>"Atlantic/Jan_Mayen"}, {"value"=>"Atlantic/Madeira"}, {"value"=>"Atlantic/Reykjavik"}, {"value"=>"Atlantic/South_Georgia"}, {"value"=>"Atlantic/Stanley"}, {"value"=>"Atlantic/St_Helena"}, {"value"=>"Australia/ACT"}, {"value"=>"Australia/Adelaide"}, {"value"=>"Australia/Brisbane"}, {"value"=>"Australia/Broken_Hill"}, {"value"=>"Australia/Canberra"}, {"value"=>"Australia/Currie"}, {"value"=>"Australia/Darwin"}, {"value"=>"Australia/Eucla"}, {"value"=>"Australia/Hobart"}, {"value"=>"Australia/LHI"}, {"value"=>"Australia/Lindeman"}, {"value"=>"Australia/Lord_Howe"}, {"value"=>"Australia/Melbourne"}, {"value"=>"Australia/North"}, {"value"=>"Australia/NSW"}, {"value"=>"Australia/Perth"}, {"value"=>"Australia/Queensland"}, {"value"=>"Australia/South"}, {"value"=>"Australia/Sydney"}, {"value"=>"Australia/Tasmania"}, {"value"=>"Australia/Victoria"}, {"value"=>"Australia/West"}, {"value"=>"Australia/Yancowinna"}, {"value"=>"Brazil/Acre"}, {"value"=>"Brazil/DeNoronha"}, {"value"=>"Brazil/East"}, {"value"=>"Brazil/West"}, {"value"=>"Canada/Atlantic"}, {"value"=>"Canada/Central"}, {"value"=>"Canada/Eastern"}, {"value"=>"Canada/East-Saskatchewan"}, {"value"=>"Canada/Mountain"}, {"value"=>"Canada/Newfoundland"}, {"value"=>"Canada/Pacific"}, {"value"=>"Canada/Saskatchewan"}, {"value"=>"Canada/Yukon"}, {"value"=>"CET"}, {"value"=>"Chile/Continental"}, {"value"=>"Chile/EasterIsland"}, {"value"=>"CST6CDT"}, {"value"=>"Cuba"}, {"value"=>"EET"}, {"value"=>"Egypt"}, {"value"=>"Eire"}, {"value"=>"EST"}, {"value"=>"EST5EDT"}, {"value"=>"Etc/GMT"}, {"value"=>"Etc/GMT0"}, {"value"=>"Etc/GMT-0"}, {"value"=>"Etc/GMT+0"}, {"value"=>"Etc/GMT-1"}, {"value"=>"Etc/GMT+1"}, {"value"=>"Etc/GMT-10"}, {"value"=>"Etc/GMT+10"}, {"value"=>"Etc/GMT-11"}, {"value"=>"Etc/GMT+11"}, {"value"=>"Etc/GMT-12"}, {"value"=>"Etc/GMT+12"}, {"value"=>"Etc/GMT-13"}, {"value"=>"Etc/GMT-14"}, {"value"=>"Etc/GMT-2"}, {"value"=>"Etc/GMT+2"}, {"value"=>"Etc/GMT-3"}, {"value"=>"Etc/GMT+3"}, {"value"=>"Etc/GMT-4"}, {"value"=>"Etc/GMT+4"}, {"value"=>"Etc/GMT-5"}, {"value"=>"Etc/GMT+5"}, {"value"=>"Etc/GMT-6"}, {"value"=>"Etc/GMT+6"}, {"value"=>"Etc/GMT-7"}, {"value"=>"Etc/GMT+7"}, {"value"=>"Etc/GMT-8"}, {"value"=>"Etc/GMT+8"}, {"value"=>"Etc/GMT-9"}, {"value"=>"Etc/GMT+9"}, {"value"=>"Etc/Greenwich"}, {"value"=>"Etc/UCT"}, {"value"=>"Etc/Universal"}, {"value"=>"Etc/UTC"}, {"value"=>"Etc/Zulu"}, {"value"=>"Europe/Amsterdam"}, {"value"=>"Europe/Andorra"}, {"value"=>"Europe/Athens"}, {"value"=>"Europe/Belfast"}, {"value"=>"Europe/Belgrade"}, {"value"=>"Europe/Berlin"}, {"value"=>"Europe/Bratislava"}, {"value"=>"Europe/Brussels"}, {"value"=>"Europe/Bucharest"}, {"value"=>"Europe/Budapest"}, {"value"=>"Europe/Chisinau"}, {"value"=>"Europe/Copenhagen"}, {"value"=>"Europe/Dublin"}, {"value"=>"Europe/Gibraltar"}, {"value"=>"Europe/Guernsey"}, {"value"=>"Europe/Helsinki"}, {"value"=>"Europe/Isle_of_Man"}, {"value"=>"Europe/Istanbul"}, {"value"=>"Europe/Jersey"}, {"value"=>"Europe/Kaliningrad"}, {"value"=>"Europe/Kiev"}, {"value"=>"Europe/Lisbon"}, {"value"=>"Europe/Ljubljana"}, {"value"=>"Europe/London"}, {"value"=>"Europe/Luxembourg"}, {"value"=>"Europe/Madrid"}, {"value"=>"Europe/Malta"}, {"value"=>"Europe/Mariehamn"}, {"value"=>"Europe/Minsk"}, {"value"=>"Europe/Monaco"}, {"value"=>"Europe/Moscow"}, {"value"=>"Europe/Nicosia"}, {"value"=>"Europe/Oslo"}, {"value"=>"Europe/Paris"}, {"value"=>"Europe/Podgorica"}, {"value"=>"Europe/Prague"}, {"value"=>"Europe/Riga"}, {"value"=>"Europe/Rome"}, {"value"=>"Europe/Samara"}, {"value"=>"Europe/San_Marino"}, {"value"=>"Europe/Sarajevo"}, {"value"=>"Europe/Simferopol"}, {"value"=>"Europe/Skopje"}, {"value"=>"Europe/Sofia"}, {"value"=>"Europe/Stockholm"}, {"value"=>"Europe/Tallinn"}, {"value"=>"Europe/Tirane"}, {"value"=>"Europe/Tiraspol"}, {"value"=>"Europe/Uzhgorod"}, {"value"=>"Europe/Vaduz"}, {"value"=>"Europe/Vatican"}, {"value"=>"Europe/Vienna"}, {"value"=>"Europe/Vilnius"}, {"value"=>"Europe/Volgograd"}, {"value"=>"Europe/Warsaw"}, {"value"=>"Europe/Zagreb"}, {"value"=>"Europe/Zaporozhye"}, {"value"=>"Europe/Zurich"}, {"value"=>"Factory"}, {"value"=>"GB"}, {"value"=>"GB-Eire"}, {"value"=>"GMT"}, {"value"=>"GMT0"}, {"value"=>"GMT-0"}, {"value"=>"GMT+0"}, {"value"=>"Greenwich"}, {"value"=>"Hongkong"}, {"value"=>"HST"}, {"value"=>"Iceland"}, {"value"=>"Indian/Antananarivo"}, {"value"=>"Indian/Chagos"}, {"value"=>"Indian/Christmas"}, {"value"=>"Indian/Cocos"}, {"value"=>"Indian/Comoro"}, {"value"=>"Indian/Kerguelen"}, {"value"=>"Indian/Mahe"}, {"value"=>"Indian/Maldives"}, {"value"=>"Indian/Mauritius"}, {"value"=>"Indian/Mayotte"}, {"value"=>"Indian/Reunion"}, {"value"=>"Iran"}, {"value"=>"Israel"}, {"value"=>"Jamaica"}, {"value"=>"Japan"}, {"value"=>"Kwajalein"}, {"value"=>"Libya"}, {"value"=>"MET"}, {"value"=>"Mexico/BajaNorte"}, {"value"=>"Mexico/BajaSur"}, {"value"=>"Mexico/General"}, {"value"=>"Mideast/Riyadh87"}, {"value"=>"Mideast/Riyadh88"}, {"value"=>"Mideast/Riyadh89"}, {"value"=>"MST"}, {"value"=>"MST7MDT"}, {"value"=>"Navajo"}, {"value"=>"NZ"}, {"value"=>"NZ-CHAT"}, {"value"=>"Pacific/Apia"}, {"value"=>"Pacific/Auckland"}, {"value"=>"Pacific/Chatham"}, {"value"=>"Pacific/Easter"}, {"value"=>"Pacific/Efate"}, {"value"=>"Pacific/Enderbury"}, {"value"=>"Pacific/Fakaofo"}, {"value"=>"Pacific/Fiji"}, {"value"=>"Pacific/Funafuti"}, {"value"=>"Pacific/Galapagos"}, {"value"=>"Pacific/Gambier"}, {"value"=>"Pacific/Guadalcanal"}, {"value"=>"Pacific/Guam"}, {"value"=>"Pacific/Honolulu"}, {"value"=>"Pacific/Johnston"}, {"value"=>"Pacific/Kiritimati"}, {"value"=>"Pacific/Kosrae"}, {"value"=>"Pacific/Kwajalein"}, {"value"=>"Pacific/Majuro"}, {"value"=>"Pacific/Marquesas"}, {"value"=>"Pacific/Midway"}, {"value"=>"Pacific/Nauru"}, {"value"=>"Pacific/Niue"}, {"value"=>"Pacific/Norfolk"}, {"value"=>"Pacific/Noumea"}, {"value"=>"Pacific/Pago_Pago"}, {"value"=>"Pacific/Palau"}, {"value"=>"Pacific/Pitcairn"}, {"value"=>"Pacific/Ponape"}, {"value"=>"Pacific/Port_Moresby"}, {"value"=>"Pacific/Rarotonga"}, {"value"=>"Pacific/Saipan"}, {"value"=>"Pacific/Samoa"}, {"value"=>"Pacific/Tahiti"}, {"value"=>"Pacific/Tarawa"}, {"value"=>"Pacific/Tongatapu"}, {"value"=>"Pacific/Truk"}, {"value"=>"Pacific/Wake"}, {"value"=>"Pacific/Wallis"}, {"value"=>"Pacific/Yap"}, {"value"=>"Poland"}, {"value"=>"Portugal"}, {"value"=>"PRC"}, {"value"=>"PST8PDT"}, {"value"=>"ROC"}, {"value"=>"ROK"}, {"value"=>"Singapore"}, {"value"=>"Turkey"}, {"value"=>"UCT"}, {"value"=>"Universal"}, {"value"=>"US/Alaska"}, {"value"=>"US/Aleutian"}, {"value"=>"US/Arizona"}, {"value"=>"US/Central"}, {"value"=>"US/Eastern"}, {"value"=>"US/East-Indiana"}, {"value"=>"US/Hawaii"}, {"value"=>"US/Indiana-Starke"}, {"value"=>"US/Michigan"}, {"value"=>"US/Mountain"}, {"value"=>"US/Pacific"}, {"value"=>"US/Samoa"}, {"value"=>"UTC"}, {"value"=>"WET"}, {"value"=>"W-SU"}, {"value"=>"Zulu"}]}} def login_banner prop_get('login-banner') end def login_banner=(val) prop_set('login-banner', val) end def hostname prop_get('hostname') end def hostname=(val) prop_set('hostname', val) end def domain prop_get('domain') end def domain=(val) prop_set('domain', val) end # Speed and duplex for the management interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the management interface def speed_duplex=(val) prop_set('speed-duplex', val) end # client certificate for syslog def syslog_certificate prop_get('syslog-certificate') end # client certificate for syslog def syslog_certificate=(val) prop_set('syslog-certificate', val) end # server certificate for syslog def inbound_syslog_certificate prop_get('inbound-syslog-certificate') end # server certificate for syslog def inbound_syslog_certificate=(val) prop_set('inbound-syslog-certificate', val) end # IP address for the management interface def ip_address prop_get('ip-address') end # IP address for the management interface def ip_address=(val) prop_set('ip-address', val) end # Public IP address for the management interface def public_ip_address prop_get('public-ip-address') end # Public IP address for the management interface def public_ip_address=(val) prop_set('public-ip-address', val) end # IP netmask for the management interface def netmask prop_get('netmask') end # IP netmask for the management interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Maximum Transmission Unit for the management interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the management interface def mtu=(val) prop_set('mtu', val) end # Panorama server (IP address or FQDN) def panorama_server prop_get('panorama-server') end # Panorama server (IP address or FQDN) def panorama_server=(val) prop_set('panorama-server', val) end # Panorama server 2 (IP address or FQDN) def panorama_server_2 prop_get('panorama-server-2') end # Panorama server 2 (IP address or FQDN) def panorama_server_2=(val) prop_set('panorama-server-2', val) end def timezone prop_get('timezone') end def timezone=(val) prop_set('timezone', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end @props={} end # class Deviceconfig def deviceconfig @subclasses['deviceconfig'] ||= Deviceconfig.new(parent_instance: self, create_children: @create_children) end class DiskSettings < ConfigClass def has_multiple_values? false end def _section :'disk-settings' end class DiskPair < XML::ConfigClass def has_multiple_values? true end def _section :'disk-pair' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[A-L]", "help-string"=>"set/delete raid disk pair"}} # set/delete raid disk pair def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class DiskPair def disk_pair if @create_children @subclasses['disk-pair'] ||= DiskPair.new(parent_instance: self, create_children: @create_children) else DiskPair.new(parent_instance: self) end end @props={} end # class DiskSettings def disk_settings @subclasses['disk-settings'] ||= DiskSettings.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^([0-9a-zA-Z:./_-])+$", "help-string"=>"Log collector name"}} # Log collector name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogCollector def log_collector if @create_children @subclasses['log-collector'] ||= LogCollector.new(parent_instance: self, create_children: @create_children) else LogCollector.new(parent_instance: self) end end class LogCollectorGroup < XML::ConfigClass def has_multiple_values? true end def _section :'log-collector-group' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class GeneralSetting < ConfigClass def has_multiple_values? false end def _section :'general-setting' end class Management < ConfigClass def has_multiple_values? false end def _section :'management' end class QuotaSettings < ConfigClass def has_multiple_values? false end def _section :'quota-settings' end class DiskQuota < ConfigClass def has_multiple_values? false end def _section :'disk-quota' end @props={"detailed"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"traffic/threat and other detailed logs quota percentage"}, "summary"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"summary logs quota percentage"}, "infra-audit"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"system and config logs quota percentage"}, "platform"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"pan platform logs quota percentage"}, "external"=> {"node-type"=>"element", "type"=>"float", "min"=>"0", "max"=>"90.0", "help-string"=>"external logs quota percentage"}} # traffic/threat and other detailed logs quota percentage def detailed prop_get('detailed') end # traffic/threat and other detailed logs quota percentage def detailed=(val) prop_set('detailed', val) end # summary logs quota percentage def summary prop_get('summary') end # summary logs quota percentage def summary=(val) prop_set('summary', val) end # system and config logs quota percentage def infra_audit prop_get('infra-audit') end # system and config logs quota percentage def infra_audit=(val) prop_set('infra-audit', val) end # pan platform logs quota percentage def platform prop_get('platform') end # pan platform logs quota percentage def platform=(val) prop_set('platform', val) end # external logs quota percentage def external prop_get('external') end # external logs quota percentage def external=(val) prop_set('external', val) end end # class DiskQuota def disk_quota @subclasses['disk-quota'] ||= DiskQuota.new(parent_instance: self, create_children: @create_children) end class LogExpirationPeriod < ConfigClass def has_multiple_values? false end def _section :'log-expiration-period' end @props={"detailed"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for detailed logs"}, "summary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for summary logs"}, "infra-audit"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for system and config logs"}, "platform"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for pan platform logs"}, "external"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=>"expiration period for external logs"}} # expiration period for detailed logs def detailed prop_get('detailed') end # expiration period for detailed logs def detailed=(val) prop_set('detailed', val) end # expiration period for summary logs def summary prop_get('summary') end # expiration period for summary logs def summary=(val) prop_set('summary', val) end # expiration period for system and config logs def infra_audit prop_get('infra-audit') end # expiration period for system and config logs def infra_audit=(val) prop_set('infra-audit', val) end # expiration period for pan platform logs def platform prop_get('platform') end # expiration period for pan platform logs def platform=(val) prop_set('platform', val) end # expiration period for external logs def external prop_get('external') end # expiration period for external logs def external=(val) prop_set('external', val) end end # class LogExpirationPeriod def log_expiration_period @subclasses['log-expiration-period'] ||= LogExpirationPeriod.new(parent_instance: self, create_children: @create_children) end @props={} end # class QuotaSettings def quota_settings @subclasses['quota-settings'] ||= QuotaSettings.new(parent_instance: self, create_children: @create_children) end class Redundancy < ConfigClass def has_multiple_values? false end def _section :'redundancy' end @props={"enabled"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Enable log redundancy across collectors"}} # Enable log redundancy across collectors def enabled prop_get('enabled') end # Enable log redundancy across collectors def enabled=(val) prop_set('enabled', val) end end # class Redundancy def redundancy @subclasses['redundancy'] ||= Redundancy.new(parent_instance: self, create_children: @create_children) end class Ssh < ConfigClass def has_multiple_values? false end def _section :'ssh' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HaProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ha-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HaProfiles def ha_profiles if @create_children @subclasses['ha-profiles'] ||= HaProfiles.new(parent_instance: self, create_children: @create_children) else HaProfiles.new(parent_instance: self) end end class MgmtProfiles < ConfigClass def has_multiple_values? false end def _section :'mgmt-profiles' end class ServerProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'server-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerProfiles def server_profiles if @create_children @subclasses['server-profiles'] ||= ServerProfiles.new(parent_instance: self, create_children: @create_children) else ServerProfiles.new(parent_instance: self) end end @props={} end # class MgmtProfiles def mgmt_profiles @subclasses['mgmt-profiles'] ||= MgmtProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"ha-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"HA profile to be used by HA SSH", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/ha-profiles/entry/@name"]}} # HA profile to be used by HA SSH def ha_profile prop_get('ha-profile') end # HA profile to be used by HA SSH def ha_profile=(val) prop_set('ha-profile', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end @props={"server-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Mgmt profile to be used by Mgmt SSH Server", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/mgmt-profiles/server-profiles/entry/@name"]}} # Mgmt profile to be used by Mgmt SSH Server def server_profile prop_get('server-profile') end # Mgmt profile to be used by Mgmt SSH Server def server_profile=(val) prop_set('server-profile', val) end end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end class RegenerateHostkeys < ConfigClass def has_multiple_values? false end def _section :'regenerate-hostkeys' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegenerateHostkeys def regenerate_hostkeys @subclasses['regenerate-hostkeys'] ||= RegenerateHostkeys.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ssh def ssh @subclasses['ssh'] ||= Ssh.new(parent_instance: self, create_children: @create_children) end @props={"enable-secure-inter-lc-communication"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Enable SSL connection using custom certificates for Inter LC communication."}, "min-retention-period"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"2000", "help-string"=> "Minimum retention period in days before purging oldest logs"}, "forward-to-all"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=>"Forward to all collectors in the preference list"}} # Enable SSL connection using custom certificates for Inter LC communication. def enable_secure_inter_lc_communication prop_get('enable-secure-inter-lc-communication') end # Enable SSL connection using custom certificates for Inter LC communication. def enable_secure_inter_lc_communication=(val) prop_set('enable-secure-inter-lc-communication', val) end # Minimum retention period in days before purging oldest logs def min_retention_period prop_get('min-retention-period') end # Minimum retention period in days before purging oldest logs def min_retention_period=(val) prop_set('min-retention-period', val) end # Forward to all collectors in the preference list def forward_to_all prop_get('forward-to-all') end # Forward to all collectors in the preference list def forward_to_all=(val) prop_set('forward-to-all', val) end end # class Management def management @subclasses['management'] ||= Management.new(parent_instance: self, create_children: @create_children) end @props={} end # class GeneralSetting def general_setting @subclasses['general-setting'] ||= GeneralSetting.new(parent_instance: self, create_children: @create_children) end class MonitoringSetting < ConfigClass def has_multiple_values? false end def _section :'monitoring-setting' end class SnmpSetting < ConfigClass def has_multiple_values? false end def _section :'snmp-setting' end class SnmpSystem < ConfigClass def has_multiple_values? false end def _section :'snmp-system' end @props={"location"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"256", "help-string"=>"System location"}, "contact"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"256", "type"=>"string", "help-string"=>"Contact information"}} # System location def location prop_get('location') end # System location def location=(val) prop_set('location', val) end # Contact information def contact prop_get('contact') end # Contact information def contact=(val) prop_set('contact', val) end end # class SnmpSystem def snmp_system @subclasses['snmp-system'] ||= SnmpSystem.new(parent_instance: self, create_children: @create_children) end class AccessSetting < ConfigClass def has_multiple_values? false end def _section :'access-setting' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end @props={"snmp-community-string"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "default"=>"public", "maxlen"=>"255", "help-string"=>"SNMP Community String"}} # SNMP Community String def snmp_community_string prop_get('snmp-community-string') end # SNMP Community String def snmp_community_string=(val) prop_set('snmp-community-string', val) end end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Views < XML::ConfigClass def has_multiple_values? true end def _section :'views' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class View < XML::ConfigClass def has_multiple_values? true end def _section :'view' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9_-]+$", "help-string"=>"Oid subtree name"}, "oid"=> {"node-type"=>"element", "maxlen"=>"255", "type"=>"string", "regex"=>"^[0-9\\.]+$", "help-string"=>"Oid of a mib node"}, "option"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"include"}, {"value"=>"exclude"}]}, "mask"=> {"node-type"=>"element", "optional"=>"yes", "maxlen"=>"255", "type"=>"string", "regex"=>"^0+[xX][0-9a-fA-F:.]+$", "help-string"=>"Subtree mask in hex"}} # Oid subtree name def name prop_get('@name') end # Oid of a mib node def oid prop_get('oid') end # Oid of a mib node def oid=(val) prop_set('oid', val) end def option prop_get('option') end def option=(val) prop_set('option', val) end # Subtree mask in hex def mask prop_get('mask') end # Subtree mask in hex def mask=(val) prop_set('mask', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class View def view if @create_children @subclasses['view'] ||= View.new(parent_instance: self, create_children: @create_children) else View.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "help-string"=>"View name"}} # View name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Views def views if @create_children @subclasses['views'] ||= Views.new(parent_instance: self, create_children: @create_children) else Views.new(parent_instance: self) end end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "minlen"=>"1", "maxlen"=>"31", "help-string"=>"User name"}, "view"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Snmp View Name", "autocomplete"=>"yes", "memberof"=>["../../../../views/entry/@name"]}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes", "help-string"=>"Authentication Protocol Password"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes", "help-string"=>"Privacy Protocol Password"}} # User name def name prop_get('@name') end # Snmp View Name def view prop_get('view') end # Snmp View Name def view=(val) prop_set('view', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={} end # class AccessSetting def access_setting @subclasses['access-setting'] ||= AccessSetting.new(parent_instance: self, create_children: @create_children) end @props={} end # class SnmpSetting def snmp_setting @subclasses['snmp-setting'] ||= SnmpSetting.new(parent_instance: self, create_children: @create_children) end @props={} end # class MonitoringSetting def monitoring_setting @subclasses['monitoring-setting'] ||= MonitoringSetting.new(parent_instance: self, create_children: @create_children) end class LogfwdSetting < ConfigClass def has_multiple_values? false end def _section :'logfwd-setting' end class Collectors < XML::ConfigClass def has_multiple_values? true end def _section :'collectors' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"log-collector-group-completer", "maxlen"=>"64", "regex"=>"^([0-9a-zA-Z:./_-])+$", "help-string"=>"log collector name", "autocomplete"=>"yes", "memberof"=>[]}} # log collector name def member prop_get('member') end # log collector name def member=(val) prop_set('member', val) end end # class Collectors def collectors if @create_children @subclasses['collectors'] ||= Collectors.new(parent_instance: self, create_children: @create_children) else Collectors.new(parent_instance: self) end end class Devices < XML::ConfigClass def has_multiple_values? true end def _section :'devices' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Collectors < XML::ConfigClass def has_multiple_values? true end def _section :'collectors' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "regex"=>"^([0-9a-zA-Z:./_-])+$", "help-string"=>"log collector name", "autocomplete"=>"yes", "memberof"=>[]}} # log collector name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Collectors def collectors if @create_children @subclasses['collectors'] ||= Collectors.new(parent_instance: self, create_children: @create_children) else Collectors.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "regex"=>"^[0-9A-Z]+$", "help-string"=>"device name", "autocomplete"=>"yes", "memberof"=>[]}} # device name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end @props={} end # class LogfwdSetting def logfwd_setting @subclasses['logfwd-setting'] ||= LogfwdSetting.new(parent_instance: self, create_children: @create_children) end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/system/match-list/entry/filter", "##/shared/log-settings/system/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/config/match-list/entry/filter", "##/shared/log-settings/config/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/userid/match-list/entry/filter", "##/shared/log-settings/userid/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/iptag/match-list/entry/filter", "##/shared/log-settings/iptag/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1024", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/globalprotect/match-list/entry/filter", "##/shared/log-settings/globalprotect/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class Hipmatch__6 < ConfigClass def has_multiple_values? false end def _section :'hipmatch__6' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/hipmatch/match-list/entry/filter", "##/shared/log-settings/hipmatch/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Hipmatch__6 def hipmatch__6 @subclasses['hipmatch__6'] ||= Hipmatch__6.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/correlation/match-list/entry/filter", "##/shared/log-settings/correlation/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/wildfire/match-list/entry/filter", "##/shared/log-settings/wildfire/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/threat/match-list/entry/filter", "##/shared/log-settings/threat/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/decryption/match-list/entry/filter", "##/shared/log-settings/decryption/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/threat/match-list/entry/filter", "##/shared/log-settings/threat/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/threat/match-list/entry/filter", "##/shared/log-settings/threat/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/traffic/match-list/entry/filter", "##/shared/log-settings/traffic/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/gtp/match-list/entry/filter", "##/shared/log-settings/gtp/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/sctp/match-list/entry/filter", "##/shared/log-settings/sctp/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/tunnel/match-list/entry/filter", "##/shared/log-settings/tunnel/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/snmptrap/entry[version]/@name", "##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/email/entry[server]/@name", "##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/syslog/entry[server]/@name", "##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name", "##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end class Tagging < ConfigClass def has_multiple_values? false end def _section :'tagging' end class Registration < XML::ConfigClass def has_multiple_values? true end def _section :'registration' end class Localhost < ConfigClass def has_multiple_values? false end def _section :'localhost' end @props={} end # class Localhost def localhost @subclasses['localhost'] ||= Localhost.new(parent_instance: self, create_children: @create_children) end class Remote < ConfigClass def has_multiple_values? false end def _section :'remote' end @props={"http-profile"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[tag-registration='yes']/@name", "##/panorama/log-settings/http/entry[tag-registration='yes']/@name"]}} def http_profile prop_get('http-profile') end def http_profile=(val) prop_set('http-profile', val) end end # class Remote def remote @subclasses['remote'] ||= Remote.new(parent_instance: self, create_children: @create_children) end @props={} end # class Registration def registration if @create_children @subclasses['registration'] ||= Registration.new(parent_instance: self, create_children: @create_children) else Registration.new(parent_instance: self) end end class Tags < XML::ConfigClass def has_multiple_values? true end def _section :'tags' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"127", "regex"=>"^[^\\]'\\[]*$", "loose-membership"=>"yes", "autocomplete"=>"yes", "memberof"=>[]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Tags def tags if @create_children @subclasses['tags'] ||= Tags.new(parent_instance: self, create_children: @create_children) else Tags.new(parent_instance: self) end end @props={"target"=> {"node-type"=>"element", "type"=>"enum", "default"=>"source-address", "enum"=> [{"value"=>"source-address", "help-string"=>"Source Address"}, {"value"=>"destination-address", "help-string"=>"Destination Address"}, {"value"=>"xff-address", "help-string"=>"X-Forwarded-For Address"}, {"value"=>"user", "help-string"=>"User"}]}, "action"=> {"node-type"=>"element", "type"=>"enum", "default"=>"add-tag", "enum"=> [{"value"=>"add-tag", "help-string"=>"Add Tag"}, {"value"=>"remove-tag", "help-string"=>"Remove Tag"}]}, "timeout"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"0", "max"=>"43200", "optional"=>"yes", "default"=>"0", "help-string"=>"timeout in minutes"}} def target prop_get('target') end def target=(val) prop_set('target', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end # timeout in minutes def timeout prop_get('timeout') end # timeout in minutes def timeout=(val) prop_set('timeout', val) end end # class Tagging def tagging @subclasses['tagging'] ||= Tagging.new(parent_instance: self, create_children: @create_children) end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/auth/match-list/entry/filter", "##/shared/log-settings/auth/match-list/entry/filter"]}, "quarantine"=>{"node-type"=>"element", "type"=>"bool", "optional"=>"yes"}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end def quarantine prop_get('quarantine') end def quarantine=(val) prop_set('quarantine', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Snmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'snmptrap' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Version < XML::ConfigClass def has_multiple_values? true end def _section :'version' end class V2c < ConfigClass def has_multiple_values? false end def _section :'v2c' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "multi-types"=> {"ipspec"=>{}, "string"=> {"maxlen"=>"63", "regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$"}}}, "community"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"127"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def community prop_get('community') end def community=(val) prop_set('community', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V2c def v2c @subclasses['v2c'] ||= V2c.new(parent_instance: self, create_children: @create_children) end class V3 < ConfigClass def has_multiple_values? false end def _section :'v3' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "manager"=> {"node-type"=>"element", "type"=>"multiple", "help-string"=>"IP address or FQDN of SNMP manager to use", "multi-types"=> {"ipspec"=>{}, "string"=> {"maxlen"=>"63", "regex"=>"^([a-zA-Z0-9\\.\\_-])+([a-zA-Z]{2,63})$"}}}, "user"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"31"}, "engineid"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "regex"=>"^[0][xX][0-9A-Fa-f]{10,128}$", "help-string"=>"A hex number (min 5 - max 64 bytes) "}, "authpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Authentication Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}, "privpwd"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Privacy Protocol Password", "minlen"=>"8", "maxlen"=>"256", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SNMP manager to use def manager prop_get('manager') end # IP address or FQDN of SNMP manager to use def manager=(val) prop_set('manager', val) end def user prop_get('user') end def user=(val) prop_set('user', val) end # A hex number (min 5 - max 64 bytes) def engineid prop_get('engineid') end # A hex number (min 5 - max 64 bytes) def engineid=(val) prop_set('engineid', val) end # Authentication Protocol Password def authpwd prop_get('authpwd') end # Authentication Protocol Password def authpwd=(val) prop_set('authpwd', val) end # Privacy Protocol Password def privpwd prop_get('privpwd') end # Privacy Protocol Password def privpwd=(val) prop_set('privpwd', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end @props={} end # class V3 def v3 @subclasses['v3'] ||= V3.new(parent_instance: self, create_children: @create_children) end @props={} end # class Version def version if @create_children @subclasses['version'] ||= Version.new(parent_instance: self, create_children: @create_children) else Version.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Snmptrap def snmptrap if @create_children @subclasses['snmptrap'] ||= Snmptrap.new(parent_instance: self, create_children: @create_children) else Snmptrap.new(parent_instance: self) end end class Email < XML::ConfigClass def has_multiple_values? true end def _section :'email' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "display-name"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "optional"=>"yes"}, "from"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "to"=> {"node-type"=>"element", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "and-also-to"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=> "^([a-zA-Z0-9_?~^'`.\\+/=|\#$!*%{}\\&-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$", "maxlen"=>"128", "help-string"=>"email address (e.g. admin@mycompany.com)"}, "gateway"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of SMTP gateway to use"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "default"=>"SMTP", "enum"=>[{"value"=>"SMTP"}, {"value"=>"TLS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"25", "help-string"=>"Port number (Standard EMAIL ports SMTP:25, TLS:587)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=>[{"value"=>"Auto"}, {"value"=>"Login"}, {"value"=>"Plain"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name", "##/panorama/certificate-profile/entry/@name"]}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for authentication", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end def display_name prop_get('display-name') end def display_name=(val) prop_set('display-name', val) end # email address (e.g. admin@mycompany.com) def from prop_get('from') end # email address (e.g. admin@mycompany.com) def from=(val) prop_set('from', val) end # email address (e.g. admin@mycompany.com) def to prop_get('to') end # email address (e.g. admin@mycompany.com) def to=(val) prop_set('to', val) end # email address (e.g. admin@mycompany.com) def and_also_to prop_get('and-also-to') end # email address (e.g. admin@mycompany.com) def and_also_to=(val) prop_set('and-also-to', val) end # IP address or FQDN of SMTP gateway to use def gateway prop_get('gateway') end # IP address or FQDN of SMTP gateway to use def gateway=(val) prop_set('gateway', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port prop_get('port') end # Port number (Standard EMAIL ports SMTP:25, TLS:587) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end # username for authentication def username prop_get('username') end # username for authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Email def email if @create_children @subclasses['email'] ||= Email.new(parent_instance: self, create_children: @create_children) else Email.new(parent_instance: self) end end class Syslog < XML::ConfigClass def has_multiple_values? true end def _section :'syslog' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "server"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of SYSLOG server to use"}, "transport"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"UDP", "enum"=>[{"value"=>"UDP"}, {"value"=>"TCP"}, {"value"=>"SSL"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "help-string"=>"Port number (Standard Syslog ports UDP:514, SSL:6514)"}, "format"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"BSD", "help-string"=>"Format of the Syslog message", "enum"=>[{"value"=>"BSD"}, {"value"=>"IETF"}]}, "facility"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"LOG_USER", "enum"=> [{"value"=>"LOG_USER"}, {"value"=>"LOG_LOCAL0"}, {"value"=>"LOG_LOCAL1"}, {"value"=>"LOG_LOCAL2"}, {"value"=>"LOG_LOCAL3"}, {"value"=>"LOG_LOCAL4"}, {"value"=>"LOG_LOCAL5"}, {"value"=>"LOG_LOCAL6"}, {"value"=>"LOG_LOCAL7"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of SYSLOG server to use def server prop_get('server') end # IP address or FQDN of SYSLOG server to use def server=(val) prop_set('server', val) end def transport prop_get('transport') end def transport=(val) prop_set('transport', val) end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port prop_get('port') end # Port number (Standard Syslog ports UDP:514, SSL:6514) def port=(val) prop_set('port', val) end # Format of the Syslog message def format prop_get('format') end # Format of the Syslog message def format=(val) prop_set('format', val) end def facility prop_get('facility') end def facility=(val) prop_set('facility', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Escaping < ConfigClass def has_multiple_values? false end def _section :'escaping' end @props={"escaped-characters"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "help-string"=>"List of characters to be escaped"}, "escape-character"=> {"node-type"=>"element", "type"=>"string", "minlen"=>"1", "maxlen"=>"1", "help-string"=>"Escape character"}} # List of characters to be escaped def escaped_characters prop_get('escaped-characters') end # List of characters to be escaped def escaped_characters=(val) prop_set('escaped-characters', val) end # Escape character def escape_character prop_get('escape-character') end # Escape character def escape_character=(val) prop_set('escape-character', val) end end # class Escaping def escaping @subclasses['escaping'] ||= Escaping.new(parent_instance: self, create_children: @create_children) end @props={"traffic"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "threat"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "wildfire"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "data"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "gtp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "sctp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "tunnel"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "auth"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "userid"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "iptag"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "decryption"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "config"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "system"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "globalprotect"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "hip-match"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}, "correlation"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"2048"}} def traffic prop_get('traffic') end def traffic=(val) prop_set('traffic', val) end def threat prop_get('threat') end def threat=(val) prop_set('threat', val) end def wildfire prop_get('wildfire') end def wildfire=(val) prop_set('wildfire', val) end def url prop_get('url') end def url=(val) prop_set('url', val) end def data prop_get('data') end def data=(val) prop_set('data', val) end def gtp prop_get('gtp') end def gtp=(val) prop_set('gtp', val) end def sctp prop_get('sctp') end def sctp=(val) prop_set('sctp', val) end def tunnel prop_get('tunnel') end def tunnel=(val) prop_set('tunnel', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end def userid prop_get('userid') end def userid=(val) prop_set('userid', val) end def iptag prop_get('iptag') end def iptag=(val) prop_set('iptag', val) end def decryption prop_get('decryption') end def decryption=(val) prop_set('decryption', val) end def config prop_get('config') end def config=(val) prop_set('config', val) end def system prop_get('system') end def system=(val) prop_set('system', val) end def globalprotect prop_get('globalprotect') end def globalprotect=(val) prop_set('globalprotect', val) end def hip_match prop_get('hip-match') end def hip_match=(val) prop_set('hip-match', val) end def correlation prop_get('correlation') end def correlation=(val) prop_set('correlation', val) end end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Syslog def syslog if @create_children @subclasses['syslog'] ||= Syslog.new(parent_instance: self, create_children: @create_children) else Syslog.new(parent_instance: self) end end class Http < XML::ConfigClass def has_multiple_values? true end def _section :'http' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Server < XML::ConfigClass def has_multiple_values? true end def _section :'server' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "address"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "regex"=>"^([a-zA-Z0-9:\\.\\_-])+([a-zA-Z0-9:\\_-])$", "help-string"=>"IP address or FQDN of HTTP server to use", "error-string"=>"Must be IP address or FQDN"}, "protocol"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"HTTPS", "enum"=>[{"value"=>"HTTP"}, {"value"=>"HTTPS"}]}, "port"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "optional"=>"yes", "default"=>"443", "help-string"=>"Port number (Standard HTTP ports HTTP:80, HTTPS:443)"}, "tls-version"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"1.2", "help-string"=>"TLS handshake protocol version", "enum"=>[{"value"=>"1.2"}, {"value"=>"1.1"}, {"value"=>"1.0"}]}, "auth"=> {"node-type"=>"element", "type"=>"enum", "internal"=>"yes", "optional"=>"yes", "enum"=>[{"value"=>"OAUTH2"}]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "default"=>"None", "help-string"=>"Certificate Profile for validating server certificate", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate-profile/entry/@name", "#myentry(vsys)/certificate-profile/entry/@name"]}, "http-method"=> {"node-type"=>"element", "type"=>"string", "default"=>"POST", "complete-handler"=>"http-method-completer", "autocomplete"=>"yes"}, "username"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"username for HTTP basic authentication", "minlen"=>"1", "maxlen"=>"255", "regex"=>"[^']*"}, "password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"255", "regex"=>"[^']*", "encrypt"=>"yes"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # IP address or FQDN of HTTP server to use def address prop_get('address') end # IP address or FQDN of HTTP server to use def address=(val) prop_set('address', val) end def protocol prop_get('protocol') end def protocol=(val) prop_set('protocol', val) end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port prop_get('port') end # Port number (Standard HTTP ports HTTP:80, HTTPS:443) def port=(val) prop_set('port', val) end # TLS handshake protocol version def tls_version prop_get('tls-version') end # TLS handshake protocol version def tls_version=(val) prop_set('tls-version', val) end def auth prop_get('auth') end def auth=(val) prop_set('auth', val) end # Certificate Profile for validating server certificate def certificate_profile prop_get('certificate-profile') end # Certificate Profile for validating server certificate def certificate_profile=(val) prop_set('certificate-profile', val) end def http_method prop_get('http-method') end def http_method=(val) prop_set('http-method', val) end # username for HTTP basic authentication def username prop_get('username') end # username for HTTP basic authentication def username=(val) prop_set('username', val) end def password prop_get('password') end def password=(val) prop_set('password', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Server def server if @create_children @subclasses['server'] ||= Server.new(parent_instance: self, create_children: @create_children) else Server.new(parent_instance: self) end end class Format < ConfigClass def has_multiple_values? false end def _section :'format' end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end class Threat < ConfigClass def has_multiple_values? false end def _section :'threat' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Threat def threat @subclasses['threat'] ||= Threat.new(parent_instance: self, create_children: @create_children) end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Url < ConfigClass def has_multiple_values? false end def _section :'url' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Url def url @subclasses['url'] ||= Url.new(parent_instance: self, create_children: @create_children) end class Data < ConfigClass def has_multiple_values? false end def _section :'data' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Data def data @subclasses['data'] ||= Data.new(parent_instance: self, create_children: @create_children) end class Gtp < ConfigClass def has_multiple_values? false end def _section :'gtp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Gtp def gtp @subclasses['gtp'] ||= Gtp.new(parent_instance: self, create_children: @create_children) end class Sctp < ConfigClass def has_multiple_values? false end def _section :'sctp' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Sctp def sctp @subclasses['sctp'] ||= Sctp.new(parent_instance: self, create_children: @create_children) end class Tunnel < ConfigClass def has_multiple_values? false end def _section :'tunnel' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Tunnel def tunnel @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) end class Auth < ConfigClass def has_multiple_values? false end def _section :'auth' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Auth def auth @subclasses['auth'] ||= Auth.new(parent_instance: self, create_children: @create_children) end class Userid < ConfigClass def has_multiple_values? false end def _section :'userid' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Userid def userid @subclasses['userid'] ||= Userid.new(parent_instance: self, create_children: @create_children) end class Iptag < ConfigClass def has_multiple_values? false end def _section :'iptag' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Iptag def iptag @subclasses['iptag'] ||= Iptag.new(parent_instance: self, create_children: @create_children) end class Decryption < ConfigClass def has_multiple_values? false end def _section :'decryption' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Decryption def decryption @subclasses['decryption'] ||= Decryption.new(parent_instance: self, create_children: @create_children) end class Globalprotect < ConfigClass def has_multiple_values? false end def _section :'globalprotect' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Globalprotect def globalprotect @subclasses['globalprotect'] ||= Globalprotect.new(parent_instance: self, create_children: @create_children) end class HipMatch < ConfigClass def has_multiple_values? false end def _section :'hip-match' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class HipMatch def hip_match @subclasses['hip-match'] ||= HipMatch.new(parent_instance: self, create_children: @create_children) end class Correlation < ConfigClass def has_multiple_values? false end def _section :'correlation' end class Headers < XML::ConfigClass def has_multiple_values? true end def _section :'headers' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Headers def headers if @create_children @subclasses['headers'] ||= Headers.new(parent_instance: self, create_children: @create_children) else Headers.new(parent_instance: self) end end class Params < XML::ConfigClass def has_multiple_values? true end def _section :'params' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=>{"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"32"}, "value"=>{"node-type"=>"element", "type"=>"string", "maxlen"=>"134"}} def name prop_get('@name') end def value prop_get('value') end def value=(val) prop_set('value', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Params def params if @create_children @subclasses['params'] ||= Params.new(parent_instance: self, create_children: @create_children) else Params.new(parent_instance: self) end end @props={"name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"31"}, "url-format"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"511", "optional"=>"yes", "help-string"=>"URI Format"}, "payload"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"2048", "help-string"=>"Enter the log format", "optional"=>"yes"}} def name prop_get('name') end def name=(val) prop_set('name', val) end # URI Format def url_format prop_get('url-format') end # URI Format def url_format=(val) prop_set('url-format', val) end # Enter the log format def payload prop_get('payload') end # Enter the log format def payload=(val) prop_set('payload', val) end end # class Correlation def correlation @subclasses['correlation'] ||= Correlation.new(parent_instance: self, create_children: @create_children) end @props={} end # class Format def format @subclasses['format'] ||= Format.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}, "tag-registration"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=> "The server(s) should have User-ID agent running in order for tag registration to work"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration prop_get('tag-registration') end # The server(s) should have User-ID agent running in order for tag registration to work def tag_registration=(val) prop_set('tag-registration', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Http def http if @create_children @subclasses['http'] ||= Http.new(parent_instance: self, create_children: @create_children) else Http.new(parent_instance: self) end end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end class LogIngestionProfile < ConfigClass def has_multiple_values? false end def _section :'log-ingestion-profile' end class Source < XML::ConfigClass def has_multiple_values? true end def _section :'source' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "subtype"=>"object-name", "autocomplete"=>"yes", "memberof"=>["#config/panorama/log-ingestion/syslog/entry/@name"]}} def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Source def source if @create_children @subclasses['source'] ||= Source.new(parent_instance: self, create_children: @create_children) else Source.new(parent_instance: self) end end @props={} end # class LogIngestionProfile def log_ingestion_profile @subclasses['log-ingestion-profile'] ||= LogIngestionProfile.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "regex"=>"^[a-zA-Z0-9\\ _-]+$", "help-string"=>"Log collector group name"}} # Log collector group name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class LogCollectorGroup def log_collector_group if @create_children @subclasses['log-collector-group'] ||= LogCollectorGroup.new(parent_instance: self, create_children: @create_children) else LogCollectorGroup.new(parent_instance: self) end end class WildfireApplianceCluster < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-appliance-cluster' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Platform < ConfigClass def has_multiple_values? false end def _section :'platform' end class Limits < ConfigClass def has_multiple_values? false end def _section :'limits' end @props={} end # class Limits def limits @subclasses['limits'] ||= Limits.new(parent_instance: self, create_children: @create_children) end @props={} end # class Platform def platform @subclasses['platform'] ||= Platform.new(parent_instance: self, create_children: @create_children) end class MgtConfig < ConfigClass def has_multiple_values? false end def _section :'mgt-config' end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Permissions < XML::ConfigClass def has_multiple_values? true end def _section :'permissions' end class RoleBased < XML::ConfigClass def has_multiple_values? true end def _section :'role-based' end @props={"superuser"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}} def superuser prop_get('superuser') end def superuser=(val) prop_set('superuser', val) end end # class RoleBased def role_based if @create_children @subclasses['role-based'] ||= RoleBased.new(parent_instance: self, create_children: @create_children) else RoleBased.new(parent_instance: self) end end @props={} end # class Permissions def permissions if @create_children @subclasses['permissions'] ||= Permissions.new(parent_instance: self, create_children: @create_children) else Permissions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[a-zA-Z0-9_.-]+$", "maxlen"=>"31", "help-string"=>"alphanumeric value"}, "phash"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/authentication-profile/entry[method/radius]/@name", "##/shared/authentication-profile/entry[method/tacplus]/@name", "##/shared/authentication-profile/entry[method/ldap]/@name", "##/shared/authentication-sequence/entry/@name", "##/panorama/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-profile/entry[method/ldap]/@name", "##/panorama/authentication-sequence/entry/@name"]}, "password-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/mgt-config/password-profile/entry/@name", "##/panorama/mgt-config/password-profile/entry/@name"]}, "public-key__9"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"non-fips-mode", "optional"=>"yes", "minlen"=>"256", "maxlen"=>"4096", "help-string"=>"Public RSA"}, "public-key__10"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"fips-mode", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"4096", "help-string"=>"Public RSA/DSA"}} # alphanumeric value def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def password_profile prop_get('password-profile') end def password_profile=(val) prop_set('password-profile', val) end # Public RSA def public_key__9 prop_get('public-key__9') end # Public RSA def public_key__9=(val) prop_set('public-key__9', val) end # Public RSA/DSA def public_key__10 prop_get('public-key__10') end # Public RSA/DSA def public_key__10=(val) prop_set('public-key__10', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end class ImportedPanoramaAdminUsers < XML::ConfigClass def has_multiple_values? true end def _section :'imported-panorama-admin-users' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"imported-panorama-admin-users-completer", "help-string"=>"Imported Panorama admin user name", "autocomplete"=>"yes", "memberof"=>[]}} # Imported Panorama admin user name def member prop_get('member') end # Imported Panorama admin user name def member=(val) prop_set('member', val) end end # class ImportedPanoramaAdminUsers def imported_panorama_admin_users if @create_children @subclasses['imported-panorama-admin-users'] ||= ImportedPanoramaAdminUsers.new(parent_instance: self, create_children: @create_children) else ImportedPanoramaAdminUsers.new(parent_instance: self) end end @props={} end # class MgtConfig def mgt_config @subclasses['mgt-config'] ||= MgtConfig.new(parent_instance: self, create_children: @create_children) end class Shared < ConfigClass def has_multiple_values? false end def _section :'shared' end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/system/match-list/entry/filter", "##/shared/log-settings/system/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/config/match-list/entry/filter", "##/shared/log-settings/config/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end @props={} end # class Shared def shared @subclasses['shared'] ||= Shared.new(parent_instance: self, create_children: @create_children) end class Deviceconfig < ConfigClass def has_multiple_values? false end def _section :'deviceconfig' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class NtpServers < ConfigClass def has_multiple_values? false end def _section :'ntp-servers' end class PrimaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'primary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class PrimaryNtpServer def primary_ntp_server @subclasses['primary-ntp-server'] ||= PrimaryNtpServer.new(parent_instance: self, create_children: @create_children) end class SecondaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'secondary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class SecondaryNtpServer def secondary_ntp_server @subclasses['secondary-ntp-server'] ||= SecondaryNtpServer.new(parent_instance: self, create_children: @create_children) end @props={} end # class NtpServers def ntp_servers @subclasses['ntp-servers'] ||= NtpServers.new(parent_instance: self, create_children: @create_children) end class DnsSetting < ConfigClass def has_multiple_values? false end def _section :'dns-setting' end class Servers < ConfigClass def has_multiple_values? false end def _section :'servers' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Primary DNS server IP address"}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Secondary DNS server IP address"}} # Primary DNS server IP address def primary prop_get('primary') end # Primary DNS server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS server IP address def secondary prop_get('secondary') end # Secondary DNS server IP address def secondary=(val) prop_set('secondary', val) end end # class Servers def servers @subclasses['servers'] ||= Servers.new(parent_instance: self, create_children: @create_children) end @props={} end # class DnsSetting def dns_setting @subclasses['dns-setting'] ||= DnsSetting.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "ha1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}, "ha1-backup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}} def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end # Enable high-availability def ha1 prop_get('ha1') end # Enable high-availability def ha1=(val) prop_set('ha1', val) end # Enable high-availability def ha1_backup prop_get('ha1-backup') end # Enable high-availability def ha1_backup=(val) prop_set('ha1-backup', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class ManagementTunnel__19 < ConfigClass def has_multiple_values? false end def _section :'management-tunnel__19' end class Tunnel < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "ikev2-gateway"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP IKEv2 gateway profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/ikev2-gateway/entry/@name"]}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP IPSec SA proposals", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/crypto-profiles/ipsec-crypto-profiles/entry/@name"]}, "enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable tunnel"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # MP IKEv2 gateway profile def ikev2_gateway prop_get('ikev2-gateway') end # MP IKEv2 gateway profile def ikev2_gateway=(val) prop_set('ikev2-gateway', val) end # MP IPSec SA proposals def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # MP IPSec SA proposals def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end # Enable tunnel def enabled prop_get('enabled') end # Enable tunnel def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tunnel def tunnel if @create_children @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) else Tunnel.new(parent_instance: self) end end class Ikev2Gateway < XML::ConfigClass def has_multiple_values? true end def _section :'ikev2-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TunnelIps < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel-ips' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end @props={"traffic-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"any", "help-string"=>"The type of traffic to pass through the tunnel", "confirm"=> "By selecting a specific traffic type only that type of traffic through the tunnel. Make sure to configure the tunnel with same traffic type on peer side as well.", "enum"=> [{"value"=>"ntp", "help-string"=> "Allow only NTP traffic over udp port 123 to pass through tunnel"}, {"value"=>"radius", "help-string"=> "Allow only Radius traffic over udp port 1812 to pass through tunnel"}, {"value"=>"tacacs", "help-string"=> "Allow only TACACS traffic over tcp port 49 to pass through tunnel"}, {"value"=>"dns", "help-string"=> "Allow only DNS traffic over udp port 53 to pass through tunnel"}, {"value"=>"any", "help-string"=>"Allow all type of traffic through tunnel"}]}, "port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Non-standard tcp/udp port to pass the traffic through the tunnel", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535", "help-string"=>"Port number"}, "enum"=> [{"value"=>"default", "help-string"=>"Standard port number for the given protocol"}]}}} # The type of traffic to pass through the tunnel def traffic_type prop_get('traffic-type') end # The type of traffic to pass through the tunnel def traffic_type=(val) prop_set('traffic-type', val) end # Non-standard tcp/udp port to pass the traffic through the tunnel def port prop_get('port') end # Non-standard tcp/udp port to pass the traffic through the tunnel def port=(val) prop_set('port', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local-tunnel-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Local tunnel IP address"}, "destination-service-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Local tunnel IP address"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Local tunnel IP address def local_tunnel_ip_address prop_get('local-tunnel-ip-address') end # Local tunnel IP address def local_tunnel_ip_address=(val) prop_set('local-tunnel-ip-address', val) end # Local tunnel IP address def destination_service_ip_address prop_get('destination-service-ip-address') end # Local tunnel IP address def destination_service_ip_address=(val) prop_set('destination-service-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TunnelIps def tunnel_ips if @create_children @subclasses['tunnel-ips'] ||= TunnelIps.new(parent_instance: self, create_children: @create_children) else TunnelIps.new(parent_instance: self) end end class PeerId < ConfigClass def has_multiple_values? false end def _section :'peer-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Peer ID string", "regex"=> "^(.+\\@[\\*a-zA-Z0-9.-]+)$|^([\\*a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer"}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Peer ID string def id prop_get('id') end # Peer ID string def id=(val) prop_set('id', val) end end # class PeerId def peer_id @subclasses['peer-id'] ||= PeerId.new(parent_instance: self, create_children: @create_children) end class LocalId < ConfigClass def has_multiple_values? false end def _section :'local-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Local ID string", "regex"=> "^(.+\\@[a-zA-Z0-9.-]+)$|^([a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer"}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Local ID string def id prop_get('id') end # Local ID string def id=(val) prop_set('id', val) end end # class LocalId def local_id @subclasses['local-id'] ||= LocalId.new(parent_instance: self, create_children: @create_children) end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end class PreSharedKey < ConfigClass def has_multiple_values? false end def _section :'pre-shared-key' end @props={"key"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"the string used as pre-shared key", "maxlen"=>"255", "encrypt"=>"yes", "skip-commit-validation"=>"yes"}} # the string used as pre-shared key def key prop_get('key') end # the string used as pre-shared key def key=(val) prop_set('key', val) end end # class PreSharedKey def pre_shared_key @subclasses['pre-shared-key'] ||= PreSharedKey.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class LocalCertificate < ConfigClass def has_multiple_values? false end def _section :'local-certificate' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key]/@name", "#config/shared/certificate/entry[not(csr)][private-key]/@name"]}} def name prop_get('name') end def name=(val) prop_set('name', val) end end # class LocalCertificate def local_certificate @subclasses['local-certificate'] ||= LocalCertificate.new(parent_instance: self, create_children: @create_children) end class PeerCaCertificates < XML::ConfigClass def has_multiple_values? true end def _section :'peer-ca-certificates' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[ca='yes']/@name", "#config/shared/certificate/entry[ca='yes']/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PeerCaCertificates def peer_ca_certificates if @create_children @subclasses['peer-ca-certificates'] ||= PeerCaCertificates.new(parent_instance: self, create_children: @create_children) else PeerCaCertificates.new(parent_instance: self) end end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable sending empty information liveness check message", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"delay interval before sending probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable sending empty information liveness check message def enable prop_get('enable') end # Enable sending empty information liveness check message def enable=(val) prop_set('enable', val) end # delay interval before sending probing packets (in seconds) def interval prop_get('interval') end # delay interval before sending probing packets (in seconds) def interval=(val) prop_set('interval', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"ikev2-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP-IKEv2 SA crypto profile name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/crypto-profiles/ikev2-crypto-profiles/entry/@name"]}, "require-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Require cookie", "default"=>"no"}, "send-peer-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send peer ID", "default"=>"yes", "disabled"=>"yes"}} # MP-IKEv2 SA crypto profile name def ikev2_crypto_profile prop_get('ikev2-crypto-profile') end # MP-IKEv2 SA crypto profile name def ikev2_crypto_profile=(val) prop_set('ikev2-crypto-profile', val) end # Require cookie def require_cookie prop_get('require-cookie') end # Require cookie def require_cookie=(val) prop_set('require-cookie', val) end # Send peer ID def send_peer_id prop_get('send-peer-id') end # Send peer ID def send_peer_id=(val) prop_set('send-peer-id', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class ProtocolCommon < ConfigClass def has_multiple_values? false end def _section :'protocol-common' end class NatTraversal < ConfigClass def has_multiple_values? false end def _section :'nat-traversal' end @props={"enable"=> {"node-type"=>"element", "help-string"=>"Enable NAT-Traversal", "type"=>"bool", "default"=>"no"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for NAT keep-alive packets (in seconds)", "type"=>"rangedint", "min"=>"10", "max"=>"3600", "default"=>"20"}, "udp-checksum-enable"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enable UDP checksum", "type"=>"bool", "default"=>"no"}} # Enable NAT-Traversal def enable prop_get('enable') end # Enable NAT-Traversal def enable=(val) prop_set('enable', val) end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Enable UDP checksum def udp_checksum_enable prop_get('udp-checksum-enable') end # Enable UDP checksum def udp_checksum_enable=(val) prop_set('udp-checksum-enable', val) end end # class NatTraversal def nat_traversal @subclasses['nat-traversal'] ||= NatTraversal.new(parent_instance: self, create_children: @create_children) end @props={"passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable passive mode (responder only)", "default"=>"no"}} # Enable passive mode (responder only) def passive_mode prop_get('passive-mode') end # Enable passive mode (responder only) def passive_mode=(val) prop_set('passive-mode', val) end end # class ProtocolCommon def protocol_common @subclasses['protocol-common'] ||= ProtocolCommon.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the MP-IKEv2 gateway"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the MP-IKEv2 gateway"}, "peer-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Peer IP address where the tunnel ends"}, "local-ip-address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Local IP address from where the tunnel originates", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/deviceconfig/system/ip-address"]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the MP-IKEv2 gateway def disabled prop_get('disabled') end # Disable the MP-IKEv2 gateway def disabled=(val) prop_set('disabled', val) end # use IPv6 for the MP-IKEv2 gateway def ipv6 prop_get('ipv6') end # use IPv6 for the MP-IKEv2 gateway def ipv6=(val) prop_set('ipv6', val) end # Peer IP address where the tunnel ends def peer_ip_address prop_get('peer-ip-address') end # Peer IP address where the tunnel ends def peer_ip_address=(val) prop_set('peer-ip-address', val) end # Local IP address from where the tunnel originates def local_ip_address prop_get('local-ip-address') end # Local IP address from where the tunnel originates def local_ip_address=(val) prop_set('local-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ikev2Gateway def ikev2_gateway if @create_children @subclasses['ikev2-gateway'] ||= Ikev2Gateway.new(parent_instance: self, create_children: @create_children) else Ikev2Gateway.new(parent_instance: self) end end class CryptoProfiles < ConfigClass def has_multiple_values? false end def _section :'crypto-profiles' end class Ikev2CryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ikev2-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-gcm", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Hash < XML::ConfigClass def has_multiple_values? true end def _section :'hash' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha256", "enum"=> [{"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hash def hash if @create_children @subclasses['hash'] ||= Hash.new(parent_instance: self, create_children: @create_children) else Hash.new(parent_instance: self) end end class DhGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dh-group' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"group19", "enum"=> [{"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhGroup def dh_group if @create_children @subclasses['dh-group'] ||= DhGroup.new(parent_instance: self, create_children: @create_children) else DhGroup.new(parent_instance: self) end end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"8"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "authentication-multiple"=> {"node-type"=>"element", "help-string"=> "MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled", "type"=>"rangedint", "max"=>"50", "optional"=>"yes", "default"=>"0"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple prop_get('authentication-multiple') end # MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple=(val) prop_set('authentication-multiple', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ikev2CryptoProfiles def ikev2_crypto_profiles if @create_children @subclasses['ikev2-crypto-profiles'] ||= Ikev2CryptoProfiles.new(parent_instance: self, create_children: @create_children) else Ikev2CryptoProfiles.new(parent_instance: self) end end class IpsecCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-gcm", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"sha256", "complete-handler"=>"esp-auth-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha256", "enum"=> [{"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end class Lifesize < XML::ConfigClass def has_multiple_values? true end def _section :'lifesize' end @props={"kb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in kilobytes(KB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "mb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in megabytes(MB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "gb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in gigabytes(GB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}} # specify lifesize in kilobytes(KB) def kb prop_get('kb') end # specify lifesize in kilobytes(KB) def kb=(val) prop_set('kb', val) end # specify lifesize in megabytes(MB) def mb prop_get('mb') end # specify lifesize in megabytes(MB) def mb=(val) prop_set('mb', val) end # specify lifesize in gigabytes(GB) def gb prop_get('gb') end # specify lifesize in gigabytes(GB) def gb=(val) prop_set('gb', val) end end # class Lifesize def lifesize if @create_children @subclasses['lifesize'] ||= Lifesize.new(parent_instance: self, create_children: @create_children) else Lifesize.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "dh-group"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"phase-2 DH group (PFS DH group)", "default"=>"group19", "enum"=> [{"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # phase-2 DH group (PFS DH group) def dh_group prop_get('dh-group') end # phase-2 DH group (PFS DH group) def dh_group=(val) prop_set('dh-group', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpsecCryptoProfiles def ipsec_crypto_profiles if @create_children @subclasses['ipsec-crypto-profiles'] ||= IpsecCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IpsecCryptoProfiles.new(parent_instance: self) end end @props={} end # class CryptoProfiles def crypto_profiles @subclasses['crypto-profiles'] ||= CryptoProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class ManagementTunnel__19 def management_tunnel__19 @subclasses['management-tunnel__19'] ||= ManagementTunnel__19.new(parent_instance: self, create_children: @create_children) end class Ssh < ConfigClass def has_multiple_values? false end def _section :'ssh' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HaProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ha-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HaProfiles def ha_profiles if @create_children @subclasses['ha-profiles'] ||= HaProfiles.new(parent_instance: self, create_children: @create_children) else HaProfiles.new(parent_instance: self) end end class MgmtProfiles < ConfigClass def has_multiple_values? false end def _section :'mgmt-profiles' end class ServerProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'server-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerProfiles def server_profiles if @create_children @subclasses['server-profiles'] ||= ServerProfiles.new(parent_instance: self, create_children: @create_children) else ServerProfiles.new(parent_instance: self) end end @props={} end # class MgmtProfiles def mgmt_profiles @subclasses['mgmt-profiles'] ||= MgmtProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"ha-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"HA profile to be used by HA SSH", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/ha-profiles/entry/@name"]}} # HA profile to be used by HA SSH def ha_profile prop_get('ha-profile') end # HA profile to be used by HA SSH def ha_profile=(val) prop_set('ha-profile', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end @props={"server-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Mgmt profile to be used by Mgmt SSH Server", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/mgmt-profiles/server-profiles/entry/@name"]}} # Mgmt profile to be used by Mgmt SSH Server def server_profile prop_get('server-profile') end # Mgmt profile to be used by Mgmt SSH Server def server_profile=(val) prop_set('server-profile', val) end end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end class RegenerateHostkeys < ConfigClass def has_multiple_values? false end def _section :'regenerate-hostkeys' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegenerateHostkeys def regenerate_hostkeys @subclasses['regenerate-hostkeys'] ||= RegenerateHostkeys.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ssh def ssh @subclasses['ssh'] ||= Ssh.new(parent_instance: self, create_children: @create_children) end class UpdateSchedule < ConfigClass def has_multiple_values? false end def _section :'update-schedule' end class WfContent < ConfigClass def has_multiple_values? false end def _section :'wf-content' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class WfContent def wf_content @subclasses['wf-content'] ||= WfContent.new(parent_instance: self, create_children: @create_children) end @props={} end # class UpdateSchedule def update_schedule @subclasses['update-schedule'] ||= UpdateSchedule.new(parent_instance: self, create_children: @create_children) end @props={"authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported.", "autocomplete"=>"yes", "memberof"=> ["##/panorama/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-sequence/entry/@name"]}, "timezone"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"Africa/Abidjan"}, {"value"=>"Africa/Accra"}, {"value"=>"Africa/Addis_Ababa"}, {"value"=>"Africa/Algiers"}, {"value"=>"Africa/Asmara"}, {"value"=>"Africa/Asmera"}, {"value"=>"Africa/Bamako"}, {"value"=>"Africa/Bangui"}, {"value"=>"Africa/Banjul"}, {"value"=>"Africa/Bissau"}, {"value"=>"Africa/Blantyre"}, {"value"=>"Africa/Brazzaville"}, {"value"=>"Africa/Bujumbura"}, {"value"=>"Africa/Cairo"}, {"value"=>"Africa/Casablanca"}, {"value"=>"Africa/Ceuta"}, {"value"=>"Africa/Conakry"}, {"value"=>"Africa/Dakar"}, {"value"=>"Africa/Dar_es_Salaam"}, {"value"=>"Africa/Djibouti"}, {"value"=>"Africa/Douala"}, {"value"=>"Africa/El_Aaiun"}, {"value"=>"Africa/Freetown"}, {"value"=>"Africa/Gaborone"}, {"value"=>"Africa/Harare"}, {"value"=>"Africa/Johannesburg"}, {"value"=>"Africa/Kampala"}, {"value"=>"Africa/Khartoum"}, {"value"=>"Africa/Kigali"}, {"value"=>"Africa/Kinshasa"}, {"value"=>"Africa/Lagos"}, {"value"=>"Africa/Libreville"}, {"value"=>"Africa/Lome"}, {"value"=>"Africa/Luanda"}, {"value"=>"Africa/Lubumbashi"}, {"value"=>"Africa/Lusaka"}, {"value"=>"Africa/Malabo"}, {"value"=>"Africa/Maputo"}, {"value"=>"Africa/Maseru"}, {"value"=>"Africa/Mbabane"}, {"value"=>"Africa/Mogadishu"}, {"value"=>"Africa/Monrovia"}, {"value"=>"Africa/Nairobi"}, {"value"=>"Africa/Ndjamena"}, {"value"=>"Africa/Niamey"}, {"value"=>"Africa/Nouakchott"}, {"value"=>"Africa/Ouagadougou"}, {"value"=>"Africa/Porto-Novo"}, {"value"=>"Africa/Sao_Tome"}, {"value"=>"Africa/Timbuktu"}, {"value"=>"Africa/Tripoli"}, {"value"=>"Africa/Tunis"}, {"value"=>"Africa/Windhoek"}, {"value"=>"America/Adak"}, {"value"=>"America/Anchorage"}, {"value"=>"America/Anguilla"}, {"value"=>"America/Antigua"}, {"value"=>"America/Araguaina"}, {"value"=>"America/Argentina/Buenos_Aires"}, {"value"=>"America/Argentina/Catamarca"}, {"value"=>"America/Argentina/ComodRivadavia"}, {"value"=>"America/Argentina/Cordoba"}, {"value"=>"America/Argentina/Jujuy"}, {"value"=>"America/Argentina/La_Rioja"}, {"value"=>"America/Argentina/Mendoza"}, {"value"=>"America/Argentina/Rio_Gallegos"}, {"value"=>"America/Argentina/Salta"}, {"value"=>"America/Argentina/San_Juan"}, {"value"=>"America/Argentina/San_Luis"}, {"value"=>"America/Argentina/Tucuman"}, {"value"=>"America/Argentina/Ushuaia"}, {"value"=>"America/Aruba"}, {"value"=>"America/Asuncion"}, {"value"=>"America/Atikokan"}, {"value"=>"America/Atka"}, {"value"=>"America/Bahia"}, {"value"=>"America/Barbados"}, {"value"=>"America/Belem"}, {"value"=>"America/Belize"}, {"value"=>"America/Blanc-Sablon"}, {"value"=>"America/Boa_Vista"}, {"value"=>"America/Bogota"}, {"value"=>"America/Boise"}, {"value"=>"America/Buenos_Aires"}, {"value"=>"America/Cambridge_Bay"}, {"value"=>"America/Campo_Grande"}, {"value"=>"America/Cancun"}, {"value"=>"America/Caracas"}, {"value"=>"America/Catamarca"}, {"value"=>"America/Cayenne"}, {"value"=>"America/Cayman"}, {"value"=>"America/Chicago"}, {"value"=>"America/Chihuahua"}, {"value"=>"America/Coral_Harbour"}, {"value"=>"America/Cordoba"}, {"value"=>"America/Costa_Rica"}, {"value"=>"America/Cuiaba"}, {"value"=>"America/Curacao"}, {"value"=>"America/Danmarkshavn"}, {"value"=>"America/Dawson"}, {"value"=>"America/Dawson_Creek"}, {"value"=>"America/Denver"}, {"value"=>"America/Detroit"}, {"value"=>"America/Dominica"}, {"value"=>"America/Edmonton"}, {"value"=>"America/Eirunepe"}, {"value"=>"America/El_Salvador"}, {"value"=>"America/Ensenada"}, {"value"=>"America/Fortaleza"}, {"value"=>"America/Fort_Wayne"}, {"value"=>"America/Glace_Bay"}, {"value"=>"America/Godthab"}, {"value"=>"America/Goose_Bay"}, {"value"=>"America/Grand_Turk"}, {"value"=>"America/Grenada"}, {"value"=>"America/Guadeloupe"}, {"value"=>"America/Guatemala"}, {"value"=>"America/Guayaquil"}, {"value"=>"America/Guyana"}, {"value"=>"America/Halifax"}, {"value"=>"America/Havana"}, {"value"=>"America/Hermosillo"}, {"value"=>"America/Indiana/Indianapolis"}, {"value"=>"America/Indiana/Knox"}, {"value"=>"America/Indiana/Marengo"}, {"value"=>"America/Indiana/Petersburg"}, {"value"=>"America/Indianapolis"}, {"value"=>"America/Indiana/Tell_City"}, {"value"=>"America/Indiana/Vevay"}, {"value"=>"America/Indiana/Vincennes"}, {"value"=>"America/Indiana/Winamac"}, {"value"=>"America/Inuvik"}, {"value"=>"America/Iqaluit"}, {"value"=>"America/Jamaica"}, {"value"=>"America/Jujuy"}, {"value"=>"America/Juneau"}, {"value"=>"America/Kentucky/Louisville"}, {"value"=>"America/Kentucky/Monticello"}, {"value"=>"America/Knox_IN"}, {"value"=>"America/La_Paz"}, {"value"=>"America/Lima"}, {"value"=>"America/Los_Angeles"}, {"value"=>"America/Louisville"}, {"value"=>"America/Maceio"}, {"value"=>"America/Managua"}, {"value"=>"America/Manaus"}, {"value"=>"America/Marigot"}, {"value"=>"America/Martinique"}, {"value"=>"America/Mazatlan"}, {"value"=>"America/Mendoza"}, {"value"=>"America/Menominee"}, {"value"=>"America/Merida"}, {"value"=>"America/Mexico_City"}, {"value"=>"America/Miquelon"}, {"value"=>"America/Moncton"}, {"value"=>"America/Monterrey"}, {"value"=>"America/Montevideo"}, {"value"=>"America/Montreal"}, {"value"=>"America/Montserrat"}, {"value"=>"America/Nassau"}, {"value"=>"America/New_York"}, {"value"=>"America/Nipigon"}, {"value"=>"America/Nome"}, {"value"=>"America/Noronha"}, {"value"=>"America/North_Dakota/Center"}, {"value"=>"America/North_Dakota/New_Salem"}, {"value"=>"America/Panama"}, {"value"=>"America/Pangnirtung"}, {"value"=>"America/Paramaribo"}, {"value"=>"America/Phoenix"}, {"value"=>"America/Port-au-Prince"}, {"value"=>"America/Porto_Acre"}, {"value"=>"America/Port_of_Spain"}, {"value"=>"America/Porto_Velho"}, {"value"=>"America/Puerto_Rico"}, {"value"=>"America/Rainy_River"}, {"value"=>"America/Rankin_Inlet"}, {"value"=>"America/Recife"}, {"value"=>"America/Regina"}, {"value"=>"America/Resolute"}, {"value"=>"America/Rio_Branco"}, {"value"=>"America/Rosario"}, {"value"=>"America/Santarem"}, {"value"=>"America/Santiago"}, {"value"=>"America/Santo_Domingo"}, {"value"=>"America/Sao_Paulo"}, {"value"=>"America/Scoresbysund"}, {"value"=>"America/Shiprock"}, {"value"=>"America/St_Barthelemy"}, {"value"=>"America/St_Johns"}, {"value"=>"America/St_Kitts"}, {"value"=>"America/St_Lucia"}, {"value"=>"America/St_Thomas"}, {"value"=>"America/St_Vincent"}, {"value"=>"America/Swift_Current"}, {"value"=>"America/Tegucigalpa"}, {"value"=>"America/Thule"}, {"value"=>"America/Thunder_Bay"}, {"value"=>"America/Tijuana"}, {"value"=>"America/Toronto"}, {"value"=>"America/Tortola"}, {"value"=>"America/Vancouver"}, {"value"=>"America/Virgin"}, {"value"=>"America/Whitehorse"}, {"value"=>"America/Winnipeg"}, {"value"=>"America/Yakutat"}, {"value"=>"America/Yellowknife"}, {"value"=>"Antarctica/Casey"}, {"value"=>"Antarctica/Davis"}, {"value"=>"Antarctica/DumontDUrville"}, {"value"=>"Antarctica/Mawson"}, {"value"=>"Antarctica/McMurdo"}, {"value"=>"Antarctica/Palmer"}, {"value"=>"Antarctica/Rothera"}, {"value"=>"Antarctica/South_Pole"}, {"value"=>"Antarctica/Syowa"}, {"value"=>"Antarctica/Vostok"}, {"value"=>"Arctic/Longyearbyen"}, {"value"=>"Asia/Aden"}, {"value"=>"Asia/Almaty"}, {"value"=>"Asia/Amman"}, {"value"=>"Asia/Anadyr"}, {"value"=>"Asia/Aqtau"}, {"value"=>"Asia/Aqtobe"}, {"value"=>"Asia/Ashgabat"}, {"value"=>"Asia/Ashkhabad"}, {"value"=>"Asia/Baghdad"}, {"value"=>"Asia/Bahrain"}, {"value"=>"Asia/Baku"}, {"value"=>"Asia/Bangkok"}, {"value"=>"Asia/Beirut"}, {"value"=>"Asia/Bishkek"}, {"value"=>"Asia/Brunei"}, {"value"=>"Asia/Calcutta"}, {"value"=>"Asia/Choibalsan"}, {"value"=>"Asia/Chongqing"}, {"value"=>"Asia/Chungking"}, {"value"=>"Asia/Colombo"}, {"value"=>"Asia/Dacca"}, {"value"=>"Asia/Damascus"}, {"value"=>"Asia/Dhaka"}, {"value"=>"Asia/Dili"}, {"value"=>"Asia/Dubai"}, {"value"=>"Asia/Dushanbe"}, {"value"=>"Asia/Gaza"}, {"value"=>"Asia/Harbin"}, {"value"=>"Asia/Ho_Chi_Minh"}, {"value"=>"Asia/Hong_Kong"}, {"value"=>"Asia/Hovd"}, {"value"=>"Asia/Irkutsk"}, {"value"=>"Asia/Istanbul"}, {"value"=>"Asia/Jakarta"}, {"value"=>"Asia/Jayapura"}, {"value"=>"Asia/Jerusalem"}, {"value"=>"Asia/Kabul"}, {"value"=>"Asia/Kamchatka"}, {"value"=>"Asia/Karachi"}, {"value"=>"Asia/Kashgar"}, {"value"=>"Asia/Kathmandu"}, {"value"=>"Asia/Katmandu"}, {"value"=>"Asia/Kolkata"}, {"value"=>"Asia/Krasnoyarsk"}, {"value"=>"Asia/Kuala_Lumpur"}, {"value"=>"Asia/Kuching"}, {"value"=>"Asia/Kuwait"}, {"value"=>"Asia/Macao"}, {"value"=>"Asia/Macau"}, {"value"=>"Asia/Magadan"}, {"value"=>"Asia/Makassar"}, {"value"=>"Asia/Manila"}, {"value"=>"Asia/Muscat"}, {"value"=>"Asia/Nicosia"}, {"value"=>"Asia/Novokuznetsk"}, {"value"=>"Asia/Novosibirsk"}, {"value"=>"Asia/Omsk"}, {"value"=>"Asia/Oral"}, {"value"=>"Asia/Phnom_Penh"}, {"value"=>"Asia/Pontianak"}, {"value"=>"Asia/Pyongyang"}, {"value"=>"Asia/Qatar"}, {"value"=>"Asia/Qyzylorda"}, {"value"=>"Asia/Rangoon"}, {"value"=>"Asia/Riyadh"}, {"value"=>"Asia/Riyadh87"}, {"value"=>"Asia/Riyadh88"}, {"value"=>"Asia/Riyadh89"}, {"value"=>"Asia/Saigon"}, {"value"=>"Asia/Sakhalin"}, {"value"=>"Asia/Samarkand"}, {"value"=>"Asia/Seoul"}, {"value"=>"Asia/Shanghai"}, {"value"=>"Asia/Singapore"}, {"value"=>"Asia/Taipei"}, {"value"=>"Asia/Tashkent"}, {"value"=>"Asia/Tbilisi"}, {"value"=>"Asia/Tehran"}, {"value"=>"Asia/Tel_Aviv"}, {"value"=>"Asia/Thimbu"}, {"value"=>"Asia/Thimphu"}, {"value"=>"Asia/Tokyo"}, {"value"=>"Asia/Ujung_Pandang"}, {"value"=>"Asia/Ulaanbaatar"}, {"value"=>"Asia/Ulan_Bator"}, {"value"=>"Asia/Urumqi"}, {"value"=>"Asia/Vientiane"}, {"value"=>"Asia/Vladivostok"}, {"value"=>"Asia/Yakutsk"}, {"value"=>"Asia/Yekaterinburg"}, {"value"=>"Asia/Yerevan"}, {"value"=>"Atlantic/Azores"}, {"value"=>"Atlantic/Bermuda"}, {"value"=>"Atlantic/Canary"}, {"value"=>"Atlantic/Cape_Verde"}, {"value"=>"Atlantic/Faeroe"}, {"value"=>"Atlantic/Faroe"}, {"value"=>"Atlantic/Jan_Mayen"}, {"value"=>"Atlantic/Madeira"}, {"value"=>"Atlantic/Reykjavik"}, {"value"=>"Atlantic/South_Georgia"}, {"value"=>"Atlantic/Stanley"}, {"value"=>"Atlantic/St_Helena"}, {"value"=>"Australia/ACT"}, {"value"=>"Australia/Adelaide"}, {"value"=>"Australia/Brisbane"}, {"value"=>"Australia/Broken_Hill"}, {"value"=>"Australia/Canberra"}, {"value"=>"Australia/Currie"}, {"value"=>"Australia/Darwin"}, {"value"=>"Australia/Eucla"}, {"value"=>"Australia/Hobart"}, {"value"=>"Australia/LHI"}, {"value"=>"Australia/Lindeman"}, {"value"=>"Australia/Lord_Howe"}, {"value"=>"Australia/Melbourne"}, {"value"=>"Australia/North"}, {"value"=>"Australia/NSW"}, {"value"=>"Australia/Perth"}, {"value"=>"Australia/Queensland"}, {"value"=>"Australia/South"}, {"value"=>"Australia/Sydney"}, {"value"=>"Australia/Tasmania"}, {"value"=>"Australia/Victoria"}, {"value"=>"Australia/West"}, {"value"=>"Australia/Yancowinna"}, {"value"=>"Brazil/Acre"}, {"value"=>"Brazil/DeNoronha"}, {"value"=>"Brazil/East"}, {"value"=>"Brazil/West"}, {"value"=>"Canada/Atlantic"}, {"value"=>"Canada/Central"}, {"value"=>"Canada/Eastern"}, {"value"=>"Canada/East-Saskatchewan"}, {"value"=>"Canada/Mountain"}, {"value"=>"Canada/Newfoundland"}, {"value"=>"Canada/Pacific"}, {"value"=>"Canada/Saskatchewan"}, {"value"=>"Canada/Yukon"}, {"value"=>"CET"}, {"value"=>"Chile/Continental"}, {"value"=>"Chile/EasterIsland"}, {"value"=>"CST6CDT"}, {"value"=>"Cuba"}, {"value"=>"EET"}, {"value"=>"Egypt"}, {"value"=>"Eire"}, {"value"=>"EST"}, {"value"=>"EST5EDT"}, {"value"=>"Etc/GMT"}, {"value"=>"Etc/GMT0"}, {"value"=>"Etc/GMT-0"}, {"value"=>"Etc/GMT+0"}, {"value"=>"Etc/GMT-1"}, {"value"=>"Etc/GMT+1"}, {"value"=>"Etc/GMT-10"}, {"value"=>"Etc/GMT+10"}, {"value"=>"Etc/GMT-11"}, {"value"=>"Etc/GMT+11"}, {"value"=>"Etc/GMT-12"}, {"value"=>"Etc/GMT+12"}, {"value"=>"Etc/GMT-13"}, {"value"=>"Etc/GMT-14"}, {"value"=>"Etc/GMT-2"}, {"value"=>"Etc/GMT+2"}, {"value"=>"Etc/GMT-3"}, {"value"=>"Etc/GMT+3"}, {"value"=>"Etc/GMT-4"}, {"value"=>"Etc/GMT+4"}, {"value"=>"Etc/GMT-5"}, {"value"=>"Etc/GMT+5"}, {"value"=>"Etc/GMT-6"}, {"value"=>"Etc/GMT+6"}, {"value"=>"Etc/GMT-7"}, {"value"=>"Etc/GMT+7"}, {"value"=>"Etc/GMT-8"}, {"value"=>"Etc/GMT+8"}, {"value"=>"Etc/GMT-9"}, {"value"=>"Etc/GMT+9"}, {"value"=>"Etc/Greenwich"}, {"value"=>"Etc/UCT"}, {"value"=>"Etc/Universal"}, {"value"=>"Etc/UTC"}, {"value"=>"Etc/Zulu"}, {"value"=>"Europe/Amsterdam"}, {"value"=>"Europe/Andorra"}, {"value"=>"Europe/Athens"}, {"value"=>"Europe/Belfast"}, {"value"=>"Europe/Belgrade"}, {"value"=>"Europe/Berlin"}, {"value"=>"Europe/Bratislava"}, {"value"=>"Europe/Brussels"}, {"value"=>"Europe/Bucharest"}, {"value"=>"Europe/Budapest"}, {"value"=>"Europe/Chisinau"}, {"value"=>"Europe/Copenhagen"}, {"value"=>"Europe/Dublin"}, {"value"=>"Europe/Gibraltar"}, {"value"=>"Europe/Guernsey"}, {"value"=>"Europe/Helsinki"}, {"value"=>"Europe/Isle_of_Man"}, {"value"=>"Europe/Istanbul"}, {"value"=>"Europe/Jersey"}, {"value"=>"Europe/Kaliningrad"}, {"value"=>"Europe/Kiev"}, {"value"=>"Europe/Lisbon"}, {"value"=>"Europe/Ljubljana"}, {"value"=>"Europe/London"}, {"value"=>"Europe/Luxembourg"}, {"value"=>"Europe/Madrid"}, {"value"=>"Europe/Malta"}, {"value"=>"Europe/Mariehamn"}, {"value"=>"Europe/Minsk"}, {"value"=>"Europe/Monaco"}, {"value"=>"Europe/Moscow"}, {"value"=>"Europe/Nicosia"}, {"value"=>"Europe/Oslo"}, {"value"=>"Europe/Paris"}, {"value"=>"Europe/Podgorica"}, {"value"=>"Europe/Prague"}, {"value"=>"Europe/Riga"}, {"value"=>"Europe/Rome"}, {"value"=>"Europe/Samara"}, {"value"=>"Europe/San_Marino"}, {"value"=>"Europe/Sarajevo"}, {"value"=>"Europe/Simferopol"}, {"value"=>"Europe/Skopje"}, {"value"=>"Europe/Sofia"}, {"value"=>"Europe/Stockholm"}, {"value"=>"Europe/Tallinn"}, {"value"=>"Europe/Tirane"}, {"value"=>"Europe/Tiraspol"}, {"value"=>"Europe/Uzhgorod"}, {"value"=>"Europe/Vaduz"}, {"value"=>"Europe/Vatican"}, {"value"=>"Europe/Vienna"}, {"value"=>"Europe/Vilnius"}, {"value"=>"Europe/Volgograd"}, {"value"=>"Europe/Warsaw"}, {"value"=>"Europe/Zagreb"}, {"value"=>"Europe/Zaporozhye"}, {"value"=>"Europe/Zurich"}, {"value"=>"Factory"}, {"value"=>"GB"}, {"value"=>"GB-Eire"}, {"value"=>"GMT"}, {"value"=>"GMT0"}, {"value"=>"GMT-0"}, {"value"=>"GMT+0"}, {"value"=>"Greenwich"}, {"value"=>"Hongkong"}, {"value"=>"HST"}, {"value"=>"Iceland"}, {"value"=>"Indian/Antananarivo"}, {"value"=>"Indian/Chagos"}, {"value"=>"Indian/Christmas"}, {"value"=>"Indian/Cocos"}, {"value"=>"Indian/Comoro"}, {"value"=>"Indian/Kerguelen"}, {"value"=>"Indian/Mahe"}, {"value"=>"Indian/Maldives"}, {"value"=>"Indian/Mauritius"}, {"value"=>"Indian/Mayotte"}, {"value"=>"Indian/Reunion"}, {"value"=>"Iran"}, {"value"=>"Israel"}, {"value"=>"Jamaica"}, {"value"=>"Japan"}, {"value"=>"Kwajalein"}, {"value"=>"Libya"}, {"value"=>"MET"}, {"value"=>"Mexico/BajaNorte"}, {"value"=>"Mexico/BajaSur"}, {"value"=>"Mexico/General"}, {"value"=>"Mideast/Riyadh87"}, {"value"=>"Mideast/Riyadh88"}, {"value"=>"Mideast/Riyadh89"}, {"value"=>"MST"}, {"value"=>"MST7MDT"}, {"value"=>"Navajo"}, {"value"=>"NZ"}, {"value"=>"NZ-CHAT"}, {"value"=>"Pacific/Apia"}, {"value"=>"Pacific/Auckland"}, {"value"=>"Pacific/Chatham"}, {"value"=>"Pacific/Easter"}, {"value"=>"Pacific/Efate"}, {"value"=>"Pacific/Enderbury"}, {"value"=>"Pacific/Fakaofo"}, {"value"=>"Pacific/Fiji"}, {"value"=>"Pacific/Funafuti"}, {"value"=>"Pacific/Galapagos"}, {"value"=>"Pacific/Gambier"}, {"value"=>"Pacific/Guadalcanal"}, {"value"=>"Pacific/Guam"}, {"value"=>"Pacific/Honolulu"}, {"value"=>"Pacific/Johnston"}, {"value"=>"Pacific/Kiritimati"}, {"value"=>"Pacific/Kosrae"}, {"value"=>"Pacific/Kwajalein"}, {"value"=>"Pacific/Majuro"}, {"value"=>"Pacific/Marquesas"}, {"value"=>"Pacific/Midway"}, {"value"=>"Pacific/Nauru"}, {"value"=>"Pacific/Niue"}, {"value"=>"Pacific/Norfolk"}, {"value"=>"Pacific/Noumea"}, {"value"=>"Pacific/Pago_Pago"}, {"value"=>"Pacific/Palau"}, {"value"=>"Pacific/Pitcairn"}, {"value"=>"Pacific/Ponape"}, {"value"=>"Pacific/Port_Moresby"}, {"value"=>"Pacific/Rarotonga"}, {"value"=>"Pacific/Saipan"}, {"value"=>"Pacific/Samoa"}, {"value"=>"Pacific/Tahiti"}, {"value"=>"Pacific/Tarawa"}, {"value"=>"Pacific/Tongatapu"}, {"value"=>"Pacific/Truk"}, {"value"=>"Pacific/Wake"}, {"value"=>"Pacific/Wallis"}, {"value"=>"Pacific/Yap"}, {"value"=>"Poland"}, {"value"=>"Portugal"}, {"value"=>"PRC"}, {"value"=>"PST8PDT"}, {"value"=>"ROC"}, {"value"=>"ROK"}, {"value"=>"Singapore"}, {"value"=>"Turkey"}, {"value"=>"UCT"}, {"value"=>"Universal"}, {"value"=>"US/Alaska"}, {"value"=>"US/Aleutian"}, {"value"=>"US/Arizona"}, {"value"=>"US/Central"}, {"value"=>"US/Eastern"}, {"value"=>"US/East-Indiana"}, {"value"=>"US/Hawaii"}, {"value"=>"US/Indiana-Starke"}, {"value"=>"US/Michigan"}, {"value"=>"US/Mountain"}, {"value"=>"US/Pacific"}, {"value"=>"US/Samoa"}, {"value"=>"UTC"}, {"value"=>"WET"}, {"value"=>"W-SU"}, {"value"=>"Zulu"}]}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"32", "subtype"=>"strict-dns-name"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server (IP address or FQDN)"}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server 2 (IP address or FQDN)"}, "login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200"}, "update-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z./_-])+$", "maxlen"=>"63", "help-string"=>"PaloAlto Networks update server", "default"=>"wildfire.paloaltonetworks.com"}, "server-verification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify update server identity"}, "secure-proxy-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[^-]([0-9a-zA-Z.:/_-])+$", "maxlen"=>"63", "help-string"=>"Secure Proxy server to use"}, "secure-proxy-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for secure proxy server"}, "secure-proxy-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Secure Proxy user name to use"}, "secure-proxy-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "help-string"=>"Secure Proxy password to use"}} # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported. def authentication_profile=(val) prop_set('authentication-profile', val) end def timezone prop_get('timezone') end def timezone=(val) prop_set('timezone', val) end def domain prop_get('domain') end def domain=(val) prop_set('domain', val) end # Panorama server (IP address or FQDN) def panorama_server prop_get('panorama-server') end # Panorama server (IP address or FQDN) def panorama_server=(val) prop_set('panorama-server', val) end # Panorama server 2 (IP address or FQDN) def panorama_server_2 prop_get('panorama-server-2') end # Panorama server 2 (IP address or FQDN) def panorama_server_2=(val) prop_set('panorama-server-2', val) end def login_banner prop_get('login-banner') end def login_banner=(val) prop_set('login-banner', val) end # PaloAlto Networks update server def update_server prop_get('update-server') end # PaloAlto Networks update server def update_server=(val) prop_set('update-server', val) end # Verify update server identity def server_verification prop_get('server-verification') end # Verify update server identity def server_verification=(val) prop_set('server-verification', val) end # Secure Proxy server to use def secure_proxy_server prop_get('secure-proxy-server') end # Secure Proxy server to use def secure_proxy_server=(val) prop_set('secure-proxy-server', val) end # Port for secure proxy server def secure_proxy_port prop_get('secure-proxy-port') end # Port for secure proxy server def secure_proxy_port=(val) prop_set('secure-proxy-port', val) end # Secure Proxy user name to use def secure_proxy_user prop_get('secure-proxy-user') end # Secure Proxy user name to use def secure_proxy_user=(val) prop_set('secure-proxy-user', val) end # Secure Proxy password to use def secure_proxy_password prop_get('secure-proxy-password') end # Secure Proxy password to use def secure_proxy_password=(val) prop_set('secure-proxy-password', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class CloudIntelligence < ConfigClass def has_multiple_values? false end def _section :'cloud-intelligence' end @props={"submit-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Automatically submit xml report of malwares to public cloud, turned off when submit-sample is on", "ui-hint"=>"\"fieldLabel\": \"Send Analysis Data\""}, "submit-sample"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Automatically submit malwares to public cloud", "ui-hint"=>"\"fieldLabel\": \"Send Malicious Samples\""}, "submit-diagnostics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Automatically diagnostic and statistic information to public cloud.", "ui-hint"=>"\"fieldLabel\": \"Send Diagnostics\""}, "cloud-query"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Automatically query public cloud before local analysis", "ui-hint"=>"\"fieldLabel\": \"Verdict Lookup\""}} # Automatically submit xml report of malwares to public cloud, turned off when submit-sample is on def submit_report prop_get('submit-report') end # Automatically submit xml report of malwares to public cloud, turned off when submit-sample is on def submit_report=(val) prop_set('submit-report', val) end # Automatically submit malwares to public cloud def submit_sample prop_get('submit-sample') end # Automatically submit malwares to public cloud def submit_sample=(val) prop_set('submit-sample', val) end # Automatically diagnostic and statistic information to public cloud. def submit_diagnostics prop_get('submit-diagnostics') end # Automatically diagnostic and statistic information to public cloud. def submit_diagnostics=(val) prop_set('submit-diagnostics', val) end # Automatically query public cloud before local analysis def cloud_query prop_get('cloud-query') end # Automatically query public cloud before local analysis def cloud_query=(val) prop_set('cloud-query', val) end end # class CloudIntelligence def cloud_intelligence @subclasses['cloud-intelligence'] ||= CloudIntelligence.new(parent_instance: self, create_children: @create_children) end class SignatureGeneration < ConfigClass def has_multiple_values? false end def _section :'signature-generation' end @props={"av"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Generate AV signatures"}, "dns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Generate DNS signatures"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Generate URL signatures"}} # Generate AV signatures def av prop_get('av') end # Generate AV signatures def av=(val) prop_set('av', val) end # Generate DNS signatures def dns prop_get('dns') end # Generate DNS signatures def dns=(val) prop_set('dns', val) end # Generate URL signatures def url prop_get('url') end # Generate URL signatures def url=(val) prop_set('url', val) end end # class SignatureGeneration def signature_generation @subclasses['signature-generation'] ||= SignatureGeneration.new(parent_instance: self, create_children: @create_children) end class FileRetention < ConfigClass def has_multiple_values? false end def _section :'file-retention' end @props={"non-malicious"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"90", "default"=>"14", "help-string"=>"Benign/Grayware file retention (days). Default is 14.", "ui-hint"=>"\"unitText\": \"days\",\"fieldLabel\": \"Benign/Grayware\""}, "malicious"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"indefinite", "help-string"=>"Malicious file retention (indefinite or days)", "ui-hint"=>"\"unitText\": \"days\",\"fieldLabel\": \"Malicious\"", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"2000", "help-string"=>"Keep from 1 to 2000 days"}, "enum"=> [{"value"=>"indefinite", "help-string"=>"Keep indefinitely (default)"}]}}} # Benign/Grayware file retention (days). Default is 14. def non_malicious prop_get('non-malicious') end # Benign/Grayware file retention (days). Default is 14. def non_malicious=(val) prop_set('non-malicious', val) end # Malicious file retention (indefinite or days) def malicious prop_get('malicious') end # Malicious file retention (indefinite or days) def malicious=(val) prop_set('malicious', val) end end # class FileRetention def file_retention @subclasses['file-retention'] ||= FileRetention.new(parent_instance: self, create_children: @create_children) end @props={"active-vm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"10", "default"=>"vm-5", "optional"=>"yes", "complete-handler"=>"wf-appliance-vm-images-completer", "ui-hint"=>"\"fieldLabel\": \"Sample Analysis Image\""}, "cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "default"=>"wildfire.paloaltonetworks.com", "help-string"=> "Hostname for cloud server. Default is wildfire-public-cloud"}, "vm-network-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable", "ui-hint"=>"\"fieldLabel\": \"Environment Networking\""}, "vm-network-use-tor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable", "ui-hint"=>"\"fieldLabel\": \"Anonymous Networking\""}, "custom-dns-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"253", "subtype"=>"strict-dns-name", "ui-hint"=>"\"fieldLabel\": \"External Load Balancer\"", "help-string"=> "use this dns name instead of the default (wfpc.service..) in server certificate and WildFire server list"}, "preferred-analysis-environment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"default", "help-string"=>"Set analysis resources allocation preference", "enum"=> [{"value"=>"default", "help-string"=>"No analysis resources allocation preference"}, {"value"=>"Executables", "help-string"=>"Analysis resources allocation preference: Executables"}, {"value"=>"Documents", "help-string"=>"Analysis resources allocation preference: Documents"}]}} def active_vm prop_get('active-vm') end def active_vm=(val) prop_set('active-vm', val) end # Hostname for cloud server. Default is wildfire-public-cloud def cloud_server prop_get('cloud-server') end # Hostname for cloud server. Default is wildfire-public-cloud def cloud_server=(val) prop_set('cloud-server', val) end # enable/disable def vm_network_enable prop_get('vm-network-enable') end # enable/disable def vm_network_enable=(val) prop_set('vm-network-enable', val) end # enable/disable def vm_network_use_tor prop_get('vm-network-use-tor') end # enable/disable def vm_network_use_tor=(val) prop_set('vm-network-use-tor', val) end # use this dns name instead of the default (wfpc.service..) in server certificate and WildFire server list def custom_dns_name prop_get('custom-dns-name') end # use this dns name instead of the default (wfpc.service..) in server certificate and WildFire server list def custom_dns_name=(val) prop_set('custom-dns-name', val) end # Set analysis resources allocation preference def preferred_analysis_environment prop_get('preferred-analysis-environment') end # Set analysis resources allocation preference def preferred_analysis_environment=(val) prop_set('preferred-analysis-environment', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Management < ConfigClass def has_multiple_values? false end def _section :'management' end class Api < ConfigClass def has_multiple_values? false end def _section :'api' end class Key < ConfigClass def has_multiple_values? false end def _section :'key' end @props={"lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"api key lifetime in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"525600"}, "enum"=>[{"value"=>"0", "help-string"=>"never"}]}}} # api key lifetime in minutes def lifetime prop_get('lifetime') end # api key lifetime in minutes def lifetime=(val) prop_set('lifetime', val) end end # class Key def key @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) end @props={} end # class Api def api @subclasses['api'] ||= Api.new(parent_instance: self, create_children: @create_children) end class AdminLockout < ConfigClass def has_multiple_values? false end def _section :'admin-lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "default"=>"10", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "default"=>"5", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class AdminLockout def admin_lockout @subclasses['admin-lockout'] ||= AdminLockout.new(parent_instance: self, create_children: @create_children) end class AdminSession < ConfigClass def has_multiple_values? false end def _section :'admin-session' end @props={"max-session-count__1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"4", "prune-on"=>"non-fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"720", "prune-on"=>"non-fips-mode", "help-string"=>"Set the maximum session time (60-1499 minutes)", "regex"=>"^(([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}, "max-session-count__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=>"Set the maximum session time (0, 60-1499 minutes)", "regex"=>"^((0)|([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}} # Set the maximum number of sessions administrators are allowed def max_session_count__1 prop_get('max-session-count__1') end # Set the maximum number of sessions administrators are allowed def max_session_count__1=(val) prop_set('max-session-count__1', val) end # Set the maximum session time (60-1499 minutes) def max_session_time__2 prop_get('max-session-time__2') end # Set the maximum session time (60-1499 minutes) def max_session_time__2=(val) prop_set('max-session-time__2', val) end # Set the maximum number of sessions administrators are allowed def max_session_count__3 prop_get('max-session-count__3') end # Set the maximum number of sessions administrators are allowed def max_session_count__3=(val) prop_set('max-session-count__3', val) end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4 prop_get('max-session-time__4') end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4=(val) prop_set('max-session-time__4', val) end end # class AdminSession def admin_session @subclasses['admin-session'] ||= AdminSession.new(parent_instance: self, create_children: @create_children) end class SecureConnServer < ConfigClass def has_multiple_values? false end def _section :'secure-conn-server' end class AuthorizationList < XML::ConfigClass def has_multiple_values? true end def _section :'authorization-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Identifier < XML::ConfigClass def has_multiple_values? true end def _section :'identifier' end class Subject < ConfigClass def has_multiple_values? false end def _section :'subject' end @props={"common-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject Common Name"}} # Subject Common Name def common_name prop_get('common-name') end # Subject Common Name def common_name=(val) prop_set('common-name', val) end end # class Subject def subject @subclasses['subject'] ||= Subject.new(parent_instance: self, create_children: @create_children) end class SubjectAltName < ConfigClass def has_multiple_values? false end def _section :'subject-alt-name' end @props={"ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"Subject alternate name IP"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject alternate name DNS"}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"Email address of the contact person"}} # Subject alternate name IP def ip prop_get('ip') end # Subject alternate name IP def ip=(val) prop_set('ip', val) end # Subject alternate name DNS def hostname prop_get('hostname') end # Subject alternate name DNS def hostname=(val) prop_set('hostname', val) end # Email address of the contact person def email prop_get('email') end # Email address of the contact person def email=(val) prop_set('email', val) end end # class SubjectAltName def subject_alt_name @subclasses['subject-alt-name'] ||= SubjectAltName.new(parent_instance: self, create_children: @create_children) end @props={} end # class Identifier def identifier if @create_children @subclasses['identifier'] ||= Identifier.new(parent_instance: self, create_children: @create_children) else Identifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthorizationList def authorization_list if @create_children @subclasses['authorization-list'] ||= AuthorizationList.new(parent_instance: self, create_children: @create_children) else AuthorizationList.new(parent_instance: self) end end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["##/panorama/ssl-tls-service-profile/entry/@name", "##/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate-profile/entry/@name", "##/shared/certificate-profile/entry/@name"]}, "disable-pre-defined-cert"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Disable connections using predefined certificates. Default setting: 'no'"}, "check-authorization-list"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help"=> "Check the authorization table for permitting incoming client connections. Default setting : 'no'", "optional"=>"yes"}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert prop_get('disable-pre-defined-cert') end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert=(val) prop_set('disable-pre-defined-cert', val) end def check_authorization_list prop_get('check-authorization-list') end def check_authorization_list=(val) prop_set('check-authorization-list', val) end end # class SecureConnServer def secure_conn_server @subclasses['secure-conn-server'] ||= SecureConnServer.new(parent_instance: self, create_children: @create_children) end class SecureConnClient < ConfigClass def has_multiple_values? false end def _section :'secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in management connections to Panorama and Log collectors", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name", "#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Custom certificate used in management connections to Panorama and Log collectors def certificate prop_get('certificate') end # Custom certificate used in management connections to Panorama and Log collectors def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/scep/entry/@name", "#config/shared/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={} end # class SecureConnClient def secure_conn_client @subclasses['secure-conn-client'] ||= SecureConnClient.new(parent_instance: self, create_children: @create_children) end @props={"idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"default administrative session idle timeout in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"1440", "help-string"=>"minutes"}, "enum"=>[{"value"=>"0", "help-string"=>"never timeout"}]}}} # default administrative session idle timeout in minutes def idle_timeout prop_get('idle-timeout') end # default administrative session idle timeout in minutes def idle_timeout=(val) prop_set('idle-timeout', val) end end # class Management def management @subclasses['management'] ||= Management.new(parent_instance: self, create_children: @create_children) end @props={} end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end class ElectionOption < ConfigClass def has_multiple_values? false end def _section :'election-option' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end class Recommended < ConfigClass def has_multiple_values? false end def _section :'recommended' end @props={} end # class Recommended def recommended @subclasses['recommended'] ||= Recommended.new(parent_instance: self, create_children: @create_children) end class Aggressive < ConfigClass def has_multiple_values? false end def _section :'aggressive' end @props={} end # class Aggressive def aggressive @subclasses['aggressive'] ||= Aggressive.new(parent_instance: self, create_children: @create_children) end class Advanced < ConfigClass def has_multiple_values? false end def _section :'advanced' end @props={"promotion-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to state change from Passive to Active, default 2000"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"8000", "max"=>"60000", "default"=>"8000", "help-string"=> "Interval in milliseconds to send Hello messages, default 8000"}, "heartbeat-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to send Heartbeat pings, default 2000"}, "preemption-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in Passive before preempting Active device, default 1"}} # Interval in milliseconds to state change from Passive to Active, default 2000 def promotion_hold_time prop_get('promotion-hold-time') end # Interval in milliseconds to state change from Passive to Active, default 2000 def promotion_hold_time=(val) prop_set('promotion-hold-time', val) end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval prop_get('hello-interval') end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval=(val) prop_set('hello-interval', val) end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval prop_get('heartbeat-interval') end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval=(val) prop_set('heartbeat-interval', val) end # Interval in minutes to stay in Passive before preempting Active device, default 1 def preemption_hold_time prop_get('preemption-hold-time') end # Interval in minutes to stay in Passive before preempting Active device, default 1 def preemption_hold_time=(val) prop_set('preemption-hold-time', val) end end # class Advanced def advanced @subclasses['advanced'] ||= Advanced.new(parent_instance: self, create_children: @create_children) end @props={} end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end @props={"priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Set priority of the local device", "enum"=> [{"value"=>"primary", "help-string"=>"Primary HA device"}, {"value"=>"secondary", "help-string"=>"Secondary HA device"}]}, "preemptive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Configure on both HA peers to allow preemption by Passive device based on priority, default no"}} # Set priority of the local device def priority prop_get('priority') end # Set priority of the local device def priority=(val) prop_set('priority', val) end # Configure on both HA peers to allow preemption by Passive device based on priority, default no def preemptive prop_get('preemptive') end # Configure on both HA peers to allow preemption by Passive device based on priority, default no def preemptive=(val) prop_set('preemptive', val) end end # class ElectionOption def election_option @subclasses['election-option'] ||= ElectionOption.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}} # Enable high-availability def enabled prop_get('enabled') end # Enable high-availability def enabled=(val) prop_set('enabled', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end class Cluster < ConfigClass def has_multiple_values? false end def _section :'cluster' end class ServiceAdvertisement < ConfigClass def has_multiple_values? false end def _section :'service-advertisement' end class DnsService < ConfigClass def has_multiple_values? false end def _section :'dns-service' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class DnsService def dns_service @subclasses['dns-service'] ||= DnsService.new(parent_instance: self, create_children: @create_children) end @props={} end # class ServiceAdvertisement def service_advertisement @subclasses['service-advertisement'] ||= ServiceAdvertisement.new(parent_instance: self, create_children: @create_children) end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "type"=>"enum", "default"=>"yes", "help-string"=>"enable/disable cluster encrypted communication", "enum"=>[{"value"=>"yes"}, {"value"=>"no", "prune-on"=>"fips-mode"}]}} # enable/disable cluster encrypted communication def enabled prop_get('enabled') end # enable/disable cluster encrypted communication def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={} end # class Cluster def cluster @subclasses['cluster'] ||= Cluster.new(parent_instance: self, create_children: @create_children) end @props={} end # class Deviceconfig def deviceconfig @subclasses['deviceconfig'] ||= Deviceconfig.new(parent_instance: self, create_children: @create_children) end class NodeManagement < XML::ConfigClass def has_multiple_values? true end def _section :'node-management' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]", "autocomplete"=>"yes", "memberof"=>[]}, "node-role"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"Node role", "enum"=> [{"value"=>"worker", "help-string"=>"Worker"}, {"value"=>"controller", "help-string"=>"Controller"}, {"value"=>"controller-backup", "help-string"=>"Controller Backup"}]}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end # Node role def node_role prop_get('node-role') end # Node role def node_role=(val) prop_set('node-role', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class NodeManagement def node_management if @create_children @subclasses['node-management'] ||= NodeManagement.new(parent_instance: self, create_children: @create_children) else NodeManagement.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"strict-host-name", "help-string"=>"Wildfire appliance cluster name"}} # Wildfire appliance cluster name def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class WildfireApplianceCluster def wildfire_appliance_cluster if @create_children @subclasses['wildfire-appliance-cluster'] ||= WildfireApplianceCluster.new(parent_instance: self, create_children: @create_children) else WildfireApplianceCluster.new(parent_instance: self) end end class WildfireAppliance < XML::ConfigClass def has_multiple_values? true end def _section :'wildfire-appliance' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Platform < ConfigClass def has_multiple_values? false end def _section :'platform' end class Limits < ConfigClass def has_multiple_values? false end def _section :'limits' end @props={} end # class Limits def limits @subclasses['limits'] ||= Limits.new(parent_instance: self, create_children: @create_children) end @props={} end # class Platform def platform @subclasses['platform'] ||= Platform.new(parent_instance: self, create_children: @create_children) end class MgtConfig < ConfigClass def has_multiple_values? false end def _section :'mgt-config' end class Users < XML::ConfigClass def has_multiple_values? true end def _section :'users' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Permissions < XML::ConfigClass def has_multiple_values? true end def _section :'permissions' end class RoleBased < XML::ConfigClass def has_multiple_values? true end def _section :'role-based' end @props={"superuser"=> {"node-type"=>"element", "type"=>"enum", "enum"=>[{"value"=>"yes"}]}} def superuser prop_get('superuser') end def superuser=(val) prop_set('superuser', val) end end # class RoleBased def role_based if @create_children @subclasses['role-based'] ||= RoleBased.new(parent_instance: self, create_children: @create_children) else RoleBased.new(parent_instance: self) end end @props={} end # class Permissions def permissions if @create_children @subclasses['permissions'] ||= Permissions.new(parent_instance: self, create_children: @create_children) else Permissions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "regex"=>"^[a-zA-Z0-9_.-]+$", "maxlen"=>"31", "help-string"=>"alphanumeric value"}, "phash"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "optional"=>"yes"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["##/shared/authentication-profile/entry[method/radius]/@name", "##/shared/authentication-profile/entry[method/tacplus]/@name", "##/shared/authentication-profile/entry[method/ldap]/@name", "##/shared/authentication-sequence/entry/@name", "##/panorama/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-profile/entry[method/ldap]/@name", "##/panorama/authentication-sequence/entry/@name"]}, "password-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/mgt-config/password-profile/entry/@name", "##/panorama/mgt-config/password-profile/entry/@name"]}, "public-key__9"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"non-fips-mode", "optional"=>"yes", "minlen"=>"256", "maxlen"=>"4096", "help-string"=>"Public RSA"}, "public-key__10"=> {"node-type"=>"element", "type"=>"string", "prune-on"=>"fips-mode", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"4096", "help-string"=>"Public RSA/DSA"}} # alphanumeric value def name prop_get('@name') end def phash prop_get('phash') end def phash=(val) prop_set('phash', val) end def authentication_profile prop_get('authentication-profile') end def authentication_profile=(val) prop_set('authentication-profile', val) end def password_profile prop_get('password-profile') end def password_profile=(val) prop_set('password-profile', val) end # Public RSA def public_key__9 prop_get('public-key__9') end # Public RSA def public_key__9=(val) prop_set('public-key__9', val) end # Public RSA/DSA def public_key__10 prop_get('public-key__10') end # Public RSA/DSA def public_key__10=(val) prop_set('public-key__10', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Users def users if @create_children @subclasses['users'] ||= Users.new(parent_instance: self, create_children: @create_children) else Users.new(parent_instance: self) end end class ImportedPanoramaAdminUsers < XML::ConfigClass def has_multiple_values? true end def _section :'imported-panorama-admin-users' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"imported-panorama-admin-users-completer", "help-string"=>"Imported Panorama admin user name", "autocomplete"=>"yes", "memberof"=>[]}} # Imported Panorama admin user name def member prop_get('member') end # Imported Panorama admin user name def member=(val) prop_set('member', val) end end # class ImportedPanoramaAdminUsers def imported_panorama_admin_users if @create_children @subclasses['imported-panorama-admin-users'] ||= ImportedPanoramaAdminUsers.new(parent_instance: self, create_children: @create_children) else ImportedPanoramaAdminUsers.new(parent_instance: self) end end @props={} end # class MgtConfig def mgt_config @subclasses['mgt-config'] ||= MgtConfig.new(parent_instance: self, create_children: @create_children) end class Shared < ConfigClass def has_multiple_values? false end def _section :'shared' end class LogSettings < ConfigClass def has_multiple_values? false end def _section :'log-settings' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end class Actions < XML::ConfigClass def has_multiple_values? true end def _section :'actions' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Type < XML::ConfigClass def has_multiple_values? true end def _section :'type' end @props={} end # class Type def type if @create_children @subclasses['type'] ||= Type.new(parent_instance: self, create_children: @create_children) else Type.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Actions def actions if @create_children @subclasses['actions'] ||= Actions.new(parent_instance: self, create_children: @create_children) else Actions.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/system/match-list/entry/filter", "##/shared/log-settings/system/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Config < ConfigClass def has_multiple_values? false end def _section :'config' end class MatchList < XML::ConfigClass def has_multiple_values? true end def _section :'match-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class SendSnmptrap < XML::ConfigClass def has_multiple_values? true end def _section :'send-snmptrap' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/snmptrap/entry[version]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSnmptrap def send_snmptrap if @create_children @subclasses['send-snmptrap'] ||= SendSnmptrap.new(parent_instance: self, create_children: @create_children) else SendSnmptrap.new(parent_instance: self) end end class SendEmail < XML::ConfigClass def has_multiple_values? true end def _section :'send-email' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/email/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendEmail def send_email if @create_children @subclasses['send-email'] ||= SendEmail.new(parent_instance: self, create_children: @create_children) else SendEmail.new(parent_instance: self) end end class SendSyslog < XML::ConfigClass def has_multiple_values? true end def _section :'send-syslog' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=>["##/panorama/log-settings/syslog/entry[server]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendSyslog def send_syslog if @create_children @subclasses['send-syslog'] ||= SendSyslog.new(parent_instance: self, create_children: @create_children) else SendSyslog.new(parent_instance: self) end end class SendHttp < XML::ConfigClass def has_multiple_values? true end def _section :'send-http' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "autocomplete"=>"yes", "memberof"=> ["##/panorama/log-settings/http/entry[not(tag-registration) or (tag-registration='no')]/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class SendHttp def send_http if @create_children @subclasses['send-http'] ||= SendHttp.new(parent_instance: self, create_children: @create_children) else SendHttp.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name"}, "description"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"0", "maxlen"=>"1023"}, "filter"=> {"node-type"=>"element", "type"=>"string", "loose-membership"=>"yes", "maxlen"=>"1023", "autocomplete"=>"yes", "memberof"=> ["##/shared/log-settings/config/match-list/entry/filter", "##/shared/log-settings/config/match-list/entry/filter"]}} def name prop_get('@name') end def description prop_get('description') end def description=(val) prop_set('description', val) end def filter prop_get('filter') end def filter=(val) prop_set('filter', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class MatchList def match_list if @create_children @subclasses['match-list'] ||= MatchList.new(parent_instance: self, create_children: @create_children) else MatchList.new(parent_instance: self) end end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: self, create_children: @create_children) end @props={} end # class LogSettings def log_settings @subclasses['log-settings'] ||= LogSettings.new(parent_instance: self, create_children: @create_children) end @props={} end # class Shared def shared @subclasses['shared'] ||= Shared.new(parent_instance: self, create_children: @create_children) end class Deviceconfig < ConfigClass def has_multiple_values? false end def _section :'deviceconfig' end class System < ConfigClass def has_multiple_values? false end def _section :'system' end class NtpServers < ConfigClass def has_multiple_values? false end def _section :'ntp-servers' end class PrimaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'primary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class PrimaryNtpServer def primary_ntp_server @subclasses['primary-ntp-server'] ||= PrimaryNtpServer.new(parent_instance: self, create_children: @create_children) end class SecondaryNtpServer < ConfigClass def has_multiple_values? false end def _section :'secondary-ntp-server' end class AuthenticationType < XML::ConfigClass def has_multiple_values? true end def _section :'authentication-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class SymmetricKey < ConfigClass def has_multiple_values? false end def _section :'symmetric-key' end class Algorithm < XML::ConfigClass def has_multiple_values? true end def _section :'algorithm' end class Md5__1 < ConfigClass def has_multiple_values? false end def _section :'md5__1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([!-~])+$", "minlen"=>"6", "maxlen"=>"32", "help-string"=>"Symmetric Key MD5 String", "encrypt"=>"yes"}} # Symmetric Key MD5 String def authentication_key prop_get('authentication-key') end # Symmetric Key MD5 String def authentication_key=(val) prop_set('authentication-key', val) end end # class Md5__1 def md5__1 @subclasses['md5__1'] ||= Md5__1.new(parent_instance: self, create_children: @create_children) end class Sha1 < ConfigClass def has_multiple_values? false end def _section :'sha1' end @props={"authentication-key"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9A-Fa-f])+$", "minlen"=>"40", "maxlen"=>"40", "help-string"=>"Symmetric Key SHA1 Hexadecimal", "encrypt"=>"yes", "error-string"=> "Error: SHA1 authentication-key should be 40 hexadecimal characters"}} # Symmetric Key SHA1 Hexadecimal def authentication_key prop_get('authentication-key') end # Symmetric Key SHA1 Hexadecimal def authentication_key=(val) prop_set('authentication-key', val) end end # class Sha1 def sha1 @subclasses['sha1'] ||= Sha1.new(parent_instance: self, create_children: @create_children) end @props={} end # class Algorithm def algorithm if @create_children @subclasses['algorithm'] ||= Algorithm.new(parent_instance: self, create_children: @create_children) else Algorithm.new(parent_instance: self) end end @props={"key-id"=> {"node-type"=>"element", "type"=>"rangedint", "min"=>"1", "max"=>"65534", "help-string"=>"Symmetric Key Number"}} # Symmetric Key Number def key_id prop_get('key-id') end # Symmetric Key Number def key_id=(val) prop_set('key-id', val) end end # class SymmetricKey def symmetric_key @subclasses['symmetric-key'] ||= SymmetricKey.new(parent_instance: self, create_children: @create_children) end class Autokey < ConfigClass def has_multiple_values? false end def _section :'autokey' end @props={} end # class Autokey def autokey @subclasses['autokey'] ||= Autokey.new(parent_instance: self, create_children: @create_children) end @props={} end # class AuthenticationType def authentication_type if @create_children @subclasses['authentication-type'] ||= AuthenticationType.new(parent_instance: self, create_children: @create_children) else AuthenticationType.new(parent_instance: self) end end @props={"ntp-server-address"=> {"node-type"=>"element", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"NTP Server IP Address or Domain Name"}} # NTP Server IP Address or Domain Name def ntp_server_address prop_get('ntp-server-address') end # NTP Server IP Address or Domain Name def ntp_server_address=(val) prop_set('ntp-server-address', val) end end # class SecondaryNtpServer def secondary_ntp_server @subclasses['secondary-ntp-server'] ||= SecondaryNtpServer.new(parent_instance: self, create_children: @create_children) end @props={} end # class NtpServers def ntp_servers @subclasses['ntp-servers'] ||= NtpServers.new(parent_instance: self, create_children: @create_children) end class DnsSetting < ConfigClass def has_multiple_values? false end def _section :'dns-setting' end class Servers < ConfigClass def has_multiple_values? false end def _section :'servers' end @props={"primary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Primary DNS server IP address"}, "secondary"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Secondary DNS server IP address"}} # Primary DNS server IP address def primary prop_get('primary') end # Primary DNS server IP address def primary=(val) prop_set('primary', val) end # Secondary DNS server IP address def secondary prop_get('secondary') end # Secondary DNS server IP address def secondary=(val) prop_set('secondary', val) end end # class Servers def servers @subclasses['servers'] ||= Servers.new(parent_instance: self, create_children: @create_children) end @props={} end # class DnsSetting def dns_setting @subclasses['dns-setting'] ||= DnsSetting.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "disable-snmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes"}, "ha1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}, "ha1-backup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}} def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_snmp prop_get('disable-snmp') end def disable_snmp=(val) prop_set('disable-snmp', val) end # Enable high-availability def ha1 prop_get('ha1') end # Enable high-availability def ha1=(val) prop_set('ha1', val) end # Enable high-availability def ha1_backup prop_get('ha1-backup') end # Enable high-availability def ha1_backup=(val) prop_set('ha1-backup', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class ManagementTunnel__28 < ConfigClass def has_multiple_values? false end def _section :'management-tunnel__28' end class Tunnel < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "ikev2-gateway"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP IKEv2 gateway profile", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/ikev2-gateway/entry/@name"]}, "ipsec-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP IPSec SA proposals", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/crypto-profiles/ipsec-crypto-profiles/entry/@name"]}, "enabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help-string"=>"Enable tunnel"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # MP IKEv2 gateway profile def ikev2_gateway prop_get('ikev2-gateway') end # MP IKEv2 gateway profile def ikev2_gateway=(val) prop_set('ikev2-gateway', val) end # MP IPSec SA proposals def ipsec_crypto_profile prop_get('ipsec-crypto-profile') end # MP IPSec SA proposals def ipsec_crypto_profile=(val) prop_set('ipsec-crypto-profile', val) end # Enable tunnel def enabled prop_get('enabled') end # Enable tunnel def enabled=(val) prop_set('enabled', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Tunnel def tunnel if @create_children @subclasses['tunnel'] ||= Tunnel.new(parent_instance: self, create_children: @create_children) else Tunnel.new(parent_instance: self) end end class Ikev2Gateway < XML::ConfigClass def has_multiple_values? true end def _section :'ikev2-gateway' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class TunnelIps < XML::ConfigClass def has_multiple_values? true end def _section :'tunnel-ips' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Traffic < ConfigClass def has_multiple_values? false end def _section :'traffic' end @props={"traffic-type"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "default"=>"any", "help-string"=>"The type of traffic to pass through the tunnel", "confirm"=> "By selecting a specific traffic type only that type of traffic through the tunnel. Make sure to configure the tunnel with same traffic type on peer side as well.", "enum"=> [{"value"=>"ntp", "help-string"=> "Allow only NTP traffic over udp port 123 to pass through tunnel"}, {"value"=>"radius", "help-string"=> "Allow only Radius traffic over udp port 1812 to pass through tunnel"}, {"value"=>"tacacs", "help-string"=> "Allow only TACACS traffic over tcp port 49 to pass through tunnel"}, {"value"=>"dns", "help-string"=> "Allow only DNS traffic over udp port 53 to pass through tunnel"}, {"value"=>"any", "help-string"=>"Allow all type of traffic through tunnel"}]}, "port"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Non-standard tcp/udp port to pass the traffic through the tunnel", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"65535", "help-string"=>"Port number"}, "enum"=> [{"value"=>"default", "help-string"=>"Standard port number for the given protocol"}]}}} # The type of traffic to pass through the tunnel def traffic_type prop_get('traffic-type') end # The type of traffic to pass through the tunnel def traffic_type=(val) prop_set('traffic-type', val) end # Non-standard tcp/udp port to pass the traffic through the tunnel def port prop_get('port') end # Non-standard tcp/udp port to pass the traffic through the tunnel def port=(val) prop_set('port', val) end end # class Traffic def traffic @subclasses['traffic'] ||= Traffic.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "local-tunnel-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Local tunnel IP address"}, "destination-service-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Local tunnel IP address"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Local tunnel IP address def local_tunnel_ip_address prop_get('local-tunnel-ip-address') end # Local tunnel IP address def local_tunnel_ip_address=(val) prop_set('local-tunnel-ip-address', val) end # Local tunnel IP address def destination_service_ip_address prop_get('destination-service-ip-address') end # Local tunnel IP address def destination_service_ip_address=(val) prop_set('destination-service-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class TunnelIps def tunnel_ips if @create_children @subclasses['tunnel-ips'] ||= TunnelIps.new(parent_instance: self, create_children: @create_children) else TunnelIps.new(parent_instance: self) end end class PeerId < ConfigClass def has_multiple_values? false end def _section :'peer-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Peer ID string", "regex"=> "^(.+\\@[\\*a-zA-Z0-9.-]+)$|^([\\*a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer"}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Peer ID string def id prop_get('id') end # Peer ID string def id=(val) prop_set('id', val) end end # class PeerId def peer_id @subclasses['peer-id'] ||= PeerId.new(parent_instance: self, create_children: @create_children) end class LocalId < ConfigClass def has_multiple_values? false end def _section :'local-id' end @props={"type"=> {"node-type"=>"element", "type"=>"string", "complete-handler"=>"ike-id-type-completer"}, "id"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"1024", "help-string"=>"Local ID string", "regex"=> "^(.+\\@[a-zA-Z0-9.-]+)$|^([a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\\\,|[^,])+)$", "complete-handler"=>"certificate-field-completer"}} def type prop_get('type') end def type=(val) prop_set('type', val) end # Local ID string def id prop_get('id') end # Local ID string def id=(val) prop_set('id', val) end end # class LocalId def local_id @subclasses['local-id'] ||= LocalId.new(parent_instance: self, create_children: @create_children) end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end class PreSharedKey < ConfigClass def has_multiple_values? false end def _section :'pre-shared-key' end @props={"key"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"the string used as pre-shared key", "maxlen"=>"255", "encrypt"=>"yes", "skip-commit-validation"=>"yes"}} # the string used as pre-shared key def key prop_get('key') end # the string used as pre-shared key def key=(val) prop_set('key', val) end end # class PreSharedKey def pre_shared_key @subclasses['pre-shared-key'] ||= PreSharedKey.new(parent_instance: self, create_children: @create_children) end class Certificate < ConfigClass def has_multiple_values? false end def _section :'certificate' end class LocalCertificate < ConfigClass def has_multiple_values? false end def _section :'local-certificate' end @props={"name"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate/entry[not(csr)][private-key]/@name", "#config/shared/certificate/entry[not(csr)][private-key]/@name"]}} def name prop_get('name') end def name=(val) prop_set('name', val) end end # class LocalCertificate def local_certificate @subclasses['local-certificate'] ||= LocalCertificate.new(parent_instance: self, create_children: @create_children) end class PeerCaCertificates < XML::ConfigClass def has_multiple_values? true end def _section :'peer-ca-certificates' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"63", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[ca='yes']/@name", "#config/shared/certificate/entry[ca='yes']/@name"]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class PeerCaCertificates def peer_ca_certificates if @create_children @subclasses['peer-ca-certificates'] ||= PeerCaCertificates.new(parent_instance: self, create_children: @create_children) else PeerCaCertificates.new(parent_instance: self) end end @props={} end # class Certificate def certificate @subclasses['certificate'] ||= Certificate.new(parent_instance: self, create_children: @create_children) end @props={} end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end class Protocol < ConfigClass def has_multiple_values? false end def _section :'protocol' end class Ikev2 < ConfigClass def has_multiple_values? false end def _section :'ikev2' end class Dpd < ConfigClass def has_multiple_values? false end def _section :'dpd' end @props={"enable"=> {"node-type"=>"element", "type"=>"bool", "help-string"=>"Enable sending empty information liveness check message", "default"=>"yes"}, "interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"delay interval before sending probing packets (in seconds)", "type"=>"rangedint", "min"=>"2", "max"=>"100", "default"=>"5"}} # Enable sending empty information liveness check message def enable prop_get('enable') end # Enable sending empty information liveness check message def enable=(val) prop_set('enable', val) end # delay interval before sending probing packets (in seconds) def interval prop_get('interval') end # delay interval before sending probing packets (in seconds) def interval=(val) prop_set('interval', val) end end # class Dpd def dpd @subclasses['dpd'] ||= Dpd.new(parent_instance: self, create_children: @create_children) end @props={"ikev2-crypto-profile"=> {"node-type"=>"element", "type"=>"string", "subtype"=>"object-name", "help-string"=>"MP-IKEv2 SA crypto profile name", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/management-tunnel/crypto-profiles/ikev2-crypto-profiles/entry/@name"]}, "require-cookie"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Require cookie", "default"=>"no"}, "send-peer-id"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Send peer ID", "default"=>"yes", "disabled"=>"yes"}} # MP-IKEv2 SA crypto profile name def ikev2_crypto_profile prop_get('ikev2-crypto-profile') end # MP-IKEv2 SA crypto profile name def ikev2_crypto_profile=(val) prop_set('ikev2-crypto-profile', val) end # Require cookie def require_cookie prop_get('require-cookie') end # Require cookie def require_cookie=(val) prop_set('require-cookie', val) end # Send peer ID def send_peer_id prop_get('send-peer-id') end # Send peer ID def send_peer_id=(val) prop_set('send-peer-id', val) end end # class Ikev2 def ikev2 @subclasses['ikev2'] ||= Ikev2.new(parent_instance: self, create_children: @create_children) end @props={} end # class Protocol def protocol @subclasses['protocol'] ||= Protocol.new(parent_instance: self, create_children: @create_children) end class ProtocolCommon < ConfigClass def has_multiple_values? false end def _section :'protocol-common' end class NatTraversal < ConfigClass def has_multiple_values? false end def _section :'nat-traversal' end @props={"enable"=> {"node-type"=>"element", "help-string"=>"Enable NAT-Traversal", "type"=>"bool", "default"=>"no"}, "keep-alive-interval"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"sending interval for NAT keep-alive packets (in seconds)", "type"=>"rangedint", "min"=>"10", "max"=>"3600", "default"=>"20"}, "udp-checksum-enable"=> {"node-type"=>"element", "optional"=>"yes", "help-string"=>"Enable UDP checksum", "type"=>"bool", "default"=>"no"}} # Enable NAT-Traversal def enable prop_get('enable') end # Enable NAT-Traversal def enable=(val) prop_set('enable', val) end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval prop_get('keep-alive-interval') end # sending interval for NAT keep-alive packets (in seconds) def keep_alive_interval=(val) prop_set('keep-alive-interval', val) end # Enable UDP checksum def udp_checksum_enable prop_get('udp-checksum-enable') end # Enable UDP checksum def udp_checksum_enable=(val) prop_set('udp-checksum-enable', val) end end # class NatTraversal def nat_traversal @subclasses['nat-traversal'] ||= NatTraversal.new(parent_instance: self, create_children: @create_children) end @props={"passive-mode"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "help-string"=>"Enable passive mode (responder only)", "default"=>"no"}} # Enable passive mode (responder only) def passive_mode prop_get('passive-mode') end # Enable passive mode (responder only) def passive_mode=(val) prop_set('passive-mode', val) end end # class ProtocolCommon def protocol_common @subclasses['protocol-common'] ||= ProtocolCommon.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "disabled"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"Disable the MP-IKEv2 gateway"}, "ipv6"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "optional"=>"yes", "help-string"=>"use IPv6 for the MP-IKEv2 gateway"}, "peer-ip-address"=> {"node-type"=>"element", "type"=>"ipspec", "help-string"=>"Peer IP address where the tunnel ends"}, "local-ip-address"=> {"node-type"=>"element", "type"=>"string", "help-string"=>"Local IP address from where the tunnel originates", "autocomplete"=>"yes", "memberof"=>["#config/devices/entry/deviceconfig/system/ip-address"]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # Disable the MP-IKEv2 gateway def disabled prop_get('disabled') end # Disable the MP-IKEv2 gateway def disabled=(val) prop_set('disabled', val) end # use IPv6 for the MP-IKEv2 gateway def ipv6 prop_get('ipv6') end # use IPv6 for the MP-IKEv2 gateway def ipv6=(val) prop_set('ipv6', val) end # Peer IP address where the tunnel ends def peer_ip_address prop_get('peer-ip-address') end # Peer IP address where the tunnel ends def peer_ip_address=(val) prop_set('peer-ip-address', val) end # Local IP address from where the tunnel originates def local_ip_address prop_get('local-ip-address') end # Local IP address from where the tunnel originates def local_ip_address=(val) prop_set('local-ip-address', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ikev2Gateway def ikev2_gateway if @create_children @subclasses['ikev2-gateway'] ||= Ikev2Gateway.new(parent_instance: self, create_children: @create_children) else Ikev2Gateway.new(parent_instance: self) end end class CryptoProfiles < ConfigClass def has_multiple_values? false end def _section :'crypto-profiles' end class Ikev2CryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ikev2-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-gcm", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Hash < XML::ConfigClass def has_multiple_values? true end def _section :'hash' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha256", "enum"=> [{"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Hash def hash if @create_children @subclasses['hash'] ||= Hash.new(parent_instance: self, create_children: @create_children) else Hash.new(parent_instance: self) end end class DhGroup < XML::ConfigClass def has_multiple_values? true end def _section :'dh-group' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"group19", "enum"=> [{"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class DhGroup def dh_group if @create_children @subclasses['dh-group'] ||= DhGroup.new(parent_instance: self, create_children: @create_children) else DhGroup.new(parent_instance: self) end end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"8"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "authentication-multiple"=> {"node-type"=>"element", "help-string"=> "MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled", "type"=>"rangedint", "max"=>"50", "optional"=>"yes", "default"=>"0"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple prop_get('authentication-multiple') end # MP-IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled def authentication_multiple=(val) prop_set('authentication-multiple', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Ikev2CryptoProfiles def ikev2_crypto_profiles if @create_children @subclasses['ikev2-crypto-profiles'] ||= Ikev2CryptoProfiles.new(parent_instance: self, create_children: @create_children) else Ikev2CryptoProfiles.new(parent_instance: self) end end class IpsecCryptoProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ipsec-crypto-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Esp < ConfigClass def has_multiple_values? false end def _section :'esp' end class Encryption < XML::ConfigClass def has_multiple_values? true end def _section :'encryption' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-gcm", "enum"=> [{"value"=>"aes-128-cbc", "help-string"=>"NIST rating 128-bit strength"}, {"value"=>"aes-192-cbc", "help-string"=>"NIST rating 192-bit strength"}, {"value"=>"aes-256-cbc", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"aes-128-gcm", "help-string"=>"NIST rating 128-bit strength, AES GCM 16"}, {"value"=>"aes-256-gcm", "help-string"=>"NIST rating 256-bit strength, AES GCM 16"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Encryption def encryption if @create_children @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) else Encryption.new(parent_instance: self) end end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"string", "default"=>"sha256", "complete-handler"=>"esp-auth-completer"}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Esp def esp @subclasses['esp'] ||= Esp.new(parent_instance: self, create_children: @create_children) end class Ah < ConfigClass def has_multiple_values? false end def _section :'ah' end class Authentication < XML::ConfigClass def has_multiple_values? true end def _section :'authentication' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"sha256", "enum"=> [{"value"=>"sha256", "help-string"=>"NIST rating 256-bit strength"}, {"value"=>"sha384", "help-string"=>"NIST rating over 256-bit strength"}, {"value"=>"sha512", "help-string"=>"NIST rating over 256-bit strength"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Authentication def authentication if @create_children @subclasses['authentication'] ||= Authentication.new(parent_instance: self, create_children: @create_children) else Authentication.new(parent_instance: self) end end @props={} end # class Ah def ah @subclasses['ah'] ||= Ah.new(parent_instance: self, create_children: @create_children) end class Lifetime < XML::ConfigClass def has_multiple_values? true end def _section :'lifetime' end @props={"seconds"=> {"node-type"=>"element", "help-string"=>"specify lifetime in seconds", "type"=>"rangedint", "max"=>"65535", "min"=>"180"}, "minutes"=> {"node-type"=>"element", "help-string"=>"specify lifetime in minutes", "type"=>"rangedint", "max"=>"65535", "min"=>"3"}, "hours"=> {"node-type"=>"element", "help-string"=>"specify lifetime in hours", "type"=>"rangedint", "max"=>"65535", "min"=>"1", "default"=>"1"}, "days"=> {"node-type"=>"element", "help-string"=>"specify lifetime in days", "type"=>"rangedint", "max"=>"365", "min"=>"1"}} # specify lifetime in seconds def seconds prop_get('seconds') end # specify lifetime in seconds def seconds=(val) prop_set('seconds', val) end # specify lifetime in minutes def minutes prop_get('minutes') end # specify lifetime in minutes def minutes=(val) prop_set('minutes', val) end # specify lifetime in hours def hours prop_get('hours') end # specify lifetime in hours def hours=(val) prop_set('hours', val) end # specify lifetime in days def days prop_get('days') end # specify lifetime in days def days=(val) prop_set('days', val) end end # class Lifetime def lifetime if @create_children @subclasses['lifetime'] ||= Lifetime.new(parent_instance: self, create_children: @create_children) else Lifetime.new(parent_instance: self) end end class Lifesize < XML::ConfigClass def has_multiple_values? true end def _section :'lifesize' end @props={"kb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in kilobytes(KB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "mb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in megabytes(MB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}, "gb"=> {"node-type"=>"element", "help-string"=>"specify lifesize in gigabytes(GB)", "optional"=>"yes", "type"=>"rangedint", "max"=>"65535", "min"=>"1"}} # specify lifesize in kilobytes(KB) def kb prop_get('kb') end # specify lifesize in kilobytes(KB) def kb=(val) prop_set('kb', val) end # specify lifesize in megabytes(MB) def mb prop_get('mb') end # specify lifesize in megabytes(MB) def mb=(val) prop_set('mb', val) end # specify lifesize in gigabytes(GB) def gb prop_get('gb') end # specify lifesize in gigabytes(GB) def gb=(val) prop_set('gb', val) end end # class Lifesize def lifesize if @create_children @subclasses['lifesize'] ||= Lifesize.new(parent_instance: self, create_children: @create_children) else Lifesize.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}, "dh-group"=> {"node-type"=>"element", "type"=>"enum", "help-string"=>"phase-2 DH group (PFS DH group)", "default"=>"group19", "enum"=> [{"value"=>"group14", "help-string"=>"2048-bit MODP Group, NIST rating 112-bit strength"}, {"value"=>"group19", "help-string"=>"256-bit random ECP Group"}, {"value"=>"group20", "help-string"=>"384-bit random ECP Group"}]}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end # phase-2 DH group (PFS DH group) def dh_group prop_get('dh-group') end # phase-2 DH group (PFS DH group) def dh_group=(val) prop_set('dh-group', val) end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class IpsecCryptoProfiles def ipsec_crypto_profiles if @create_children @subclasses['ipsec-crypto-profiles'] ||= IpsecCryptoProfiles.new(parent_instance: self, create_children: @create_children) else IpsecCryptoProfiles.new(parent_instance: self) end end @props={} end # class CryptoProfiles def crypto_profiles @subclasses['crypto-profiles'] ||= CryptoProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class ManagementTunnel__28 def management_tunnel__28 @subclasses['management-tunnel__28'] ||= ManagementTunnel__28.new(parent_instance: self, create_children: @create_children) end class Ssh < ConfigClass def has_multiple_values? false end def _section :'ssh' end class Profiles < ConfigClass def has_multiple_values? false end def _section :'profiles' end class HaProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'ha-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class HaProfiles def ha_profiles if @create_children @subclasses['ha-profiles'] ||= HaProfiles.new(parent_instance: self, create_children: @create_children) else HaProfiles.new(parent_instance: self) end end class MgmtProfiles < ConfigClass def has_multiple_values? false end def _section :'mgmt-profiles' end class ServerProfiles < XML::ConfigClass def has_multiple_values? true end def _section :'server-profiles' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Ciphers < XML::ConfigClass def has_multiple_values? true end def _section :'ciphers' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"aes-128-cbc", "enum"=> [{"value"=>"aes128-cbc", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Cipher Block Chaining"}, {"value"=>"aes192-cbc", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Cipher Block Chaining"}, {"value"=>"aes256-cbc", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Cipher Block Chaining"}, {"value"=>"aes128-ctr", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with Counter Mode"}, {"value"=>"aes192-ctr", "optional"=>"yes", "help-string"=>"AES 192 bit cipher with Counter Mode"}, {"value"=>"aes256-ctr", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with Counter Mode"}, {"value"=>"aes128-gcm", "optional"=>"yes", "help-string"=>"AES 128 bit cipher with GCM"}, {"value"=>"aes256-gcm", "optional"=>"yes", "help-string"=>"AES 256 bit cipher with GCM"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Ciphers def ciphers if @create_children @subclasses['ciphers'] ||= Ciphers.new(parent_instance: self, create_children: @create_children) else Ciphers.new(parent_instance: self) end end class Mac < XML::ConfigClass def has_multiple_values? true end def _section :'mac' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"hmac-sha2-256", "enum"=> [{"value"=>"hmac-sha1", "optional"=>"yes", "help-string"=>"MAC with SHA1 cryptographic hash"}, {"value"=>"hmac-sha2-256", "optional"=>"yes", "help-string"=>"MAC with SHA2-256 cryptographic hash"}, {"value"=>"hmac-sha2-512", "optional"=>"yes", "help-string"=>"MAC with SHA2-512 cryptographic hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Mac def mac if @create_children @subclasses['mac'] ||= Mac.new(parent_instance: self, create_children: @create_children) else Mac.new(parent_instance: self) end end class Kex < XML::ConfigClass def has_multiple_values? true end def _section :'kex' end @props={"member"=> {"node-type"=>"element", "type"=>"enum", "default"=>"diffie-hellman-group14-sha1", "enum"=> [{"value"=>"diffie-hellman-group14-sha1", "help-string"=>"Diffie Hellman group 14 with SHA1 hash"}, {"value"=>"ecdh-sha2-nistp256", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-256 with SHA2-256 hash"}, {"value"=>"ecdh-sha2-nistp384", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-384 with SHA2-384 hash"}, {"value"=>"ecdh-sha2-nistp521", "help-string"=> "Elliptic Curve Diffie Hellman over NIST P-521 with SHA2-521 hash"}]}} def member prop_get('member') end def member=(val) prop_set('member', val) end end # class Kex def kex if @create_children @subclasses['kex'] ||= Kex.new(parent_instance: self, create_children: @create_children) else Kex.new(parent_instance: self) end end class DefaultHostkey < ConfigClass def has_multiple_values? false end def _section :'default-hostkey' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class All < ConfigClass def has_multiple_values? false end def _section :'all' end @props={} end # class All def all @subclasses['all'] ||= All.new(parent_instance: self, create_children: @create_children) end @props={"ECDSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"ECDSA key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}, "RSA"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"RSA key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # ECDSA key def ECDSA prop_get('ECDSA') end # ECDSA key def ECDSA=(val) prop_set('ECDSA', val) end # RSA key def RSA prop_get('RSA') end # RSA key def RSA=(val) prop_set('RSA', val) end end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class DefaultHostkey def default_hostkey @subclasses['default-hostkey'] ||= DefaultHostkey.new(parent_instance: self, create_children: @create_children) end class SessionRekey < ConfigClass def has_multiple_values? false end def _section :'session-rekey' end @props={"data"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the data to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"4000", "help-string"=> "Maximum data in Megabytes to be transmitted between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=> "Set the default to cipher based rekeying, which is between 1GB to 4GB"}]}}, "interval"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=>"Set the time interval between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"10", "max"=>"3600", "help-string"=> "Maximum time interval in seconds between each rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default to no time based rekeying"}]}}, "packets"=> {"node-type"=>"element", "type"=>"multiple", "optional"=>"yes", "default"=>"default", "help-string"=> "Set the number of packets to be transmitted between each ssh rekeying", "multi-types"=> {"rangedint"=> {"min"=>"12", "max"=>"27", "help-string"=> "Maximum number of packets (2^n) to be transmitted between rekeying"}, "enum"=> [{"value"=>"default", "help-string"=>"Set the default number of packets (2^28)"}]}}} # Set the data to be transmitted between each ssh rekeying def data prop_get('data') end # Set the data to be transmitted between each ssh rekeying def data=(val) prop_set('data', val) end # Set the time interval between each ssh rekeying def interval prop_get('interval') end # Set the time interval between each ssh rekeying def interval=(val) prop_set('interval', val) end # Set the number of packets to be transmitted between each ssh rekeying def packets prop_get('packets') end # Set the number of packets to be transmitted between each ssh rekeying def packets=(val) prop_set('packets', val) end end # class SessionRekey def session_rekey @subclasses['session-rekey'] ||= SessionRekey.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string begin with letter: [0-9a-zA-Z._-]", "regex"=>"^[a-zA-Z]{1}[0-9a-zA-Z._-]*$"}} # alphanumeric string begin with letter: [0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class ServerProfiles def server_profiles if @create_children @subclasses['server-profiles'] ||= ServerProfiles.new(parent_instance: self, create_children: @create_children) else ServerProfiles.new(parent_instance: self) end end @props={} end # class MgmtProfiles def mgmt_profiles @subclasses['mgmt-profiles'] ||= MgmtProfiles.new(parent_instance: self, create_children: @create_children) end @props={} end # class Profiles def profiles @subclasses['profiles'] ||= Profiles.new(parent_instance: self, create_children: @create_children) end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end @props={"ha-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"HA profile to be used by HA SSH", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/ha-profiles/entry/@name"]}} # HA profile to be used by HA SSH def ha_profile prop_get('ha-profile') end # HA profile to be used by HA SSH def ha_profile=(val) prop_set('ha-profile', val) end end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end @props={"server-profile"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"object-name", "help-string"=>"Mgmt profile to be used by Mgmt SSH Server", "autocomplete"=>"yes", "memberof"=> ["#config/devices/entry/deviceconfig/system/ssh/profiles/mgmt-profiles/server-profiles/entry/@name"]}} # Mgmt profile to be used by Mgmt SSH Server def server_profile prop_get('server-profile') end # Mgmt profile to be used by Mgmt SSH Server def server_profile=(val) prop_set('server-profile', val) end end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end class RegenerateHostkeys < ConfigClass def has_multiple_values? false end def _section :'regenerate-hostkeys' end class Ha < ConfigClass def has_multiple_values? false end def _section :'ha' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Ha def ha @subclasses['ha'] ||= Ha.new(parent_instance: self, create_children: @create_children) end class Mgmt < ConfigClass def has_multiple_values? false end def _section :'mgmt' end class KeyType < XML::ConfigClass def has_multiple_values? true end def _section :'key-type' end class ECDSA < ConfigClass def has_multiple_values? false end def _section :'ECDSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"256", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"256", "help-string"=>"ECDSA key of length 256"}, {"value"=>"384", "help-string"=>"ECDSA key of length 384"}, {"value"=>"521", "help-string"=>"ECDSA key of length 521"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class ECDSA def ECDSA @subclasses['ECDSA'] ||= ECDSA.new(parent_instance: self, create_children: @create_children) end class RSA < ConfigClass def has_multiple_values? false end def _section :'RSA' end @props={"key-length"=> {"node-type"=>"element", "type"=>"enum", "default"=>"2048", "help-string"=>"Length of SSH key", "enum"=> [{"value"=>"2048", "help-string"=>"RSA key of length 2048"}, {"value"=>"3072", "help-string"=>"RSA key of length 3072"}, {"value"=>"4096", "help-string"=>"RSA key of length 4096"}]}} # Length of SSH key def key_length prop_get('key-length') end # Length of SSH key def key_length=(val) prop_set('key-length', val) end end # class RSA def RSA @subclasses['RSA'] ||= RSA.new(parent_instance: self, create_children: @create_children) end @props={} end # class KeyType def key_type if @create_children @subclasses['key-type'] ||= KeyType.new(parent_instance: self, create_children: @create_children) else KeyType.new(parent_instance: self) end end @props={} end # class Mgmt def mgmt @subclasses['mgmt'] ||= Mgmt.new(parent_instance: self, create_children: @create_children) end @props={} end # class RegenerateHostkeys def regenerate_hostkeys @subclasses['regenerate-hostkeys'] ||= RegenerateHostkeys.new(parent_instance: self, create_children: @create_children) end @props={} end # class Ssh def ssh @subclasses['ssh'] ||= Ssh.new(parent_instance: self, create_children: @create_children) end class UpdateSchedule < ConfigClass def has_multiple_values? false end def _section :'update-schedule' end class WfContent < ConfigClass def has_multiple_values? false end def _section :'wf-content' end class Recurring < ConfigClass def has_multiple_values? false end def _section :'recurring' end class Daily < ConfigClass def has_multiple_values? false end def _section :'daily' end @props={"at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Daily def daily @subclasses['daily'] ||= Daily.new(parent_instance: self, create_children: @create_children) end class Weekly < ConfigClass def has_multiple_values? false end def _section :'weekly' end @props={"day-of-week"=> {"node-type"=>"element", "type"=>"enum", "enum"=> [{"value"=>"sunday", "help-string"=>"Sunday"}, {"value"=>"monday", "help-string"=>"Monday"}, {"value"=>"tuesday", "help-string"=>"Tuesday"}, {"value"=>"wednesday", "help-string"=>"Wednesday"}, {"value"=>"thursday", "help-string"=>"Thursday"}, {"value"=>"friday", "help-string"=>"Friday"}, {"value"=>"saturday", "help-string"=>"Saturday"}]}, "at"=> {"node-type"=>"element", "type"=>"string", "regex"=>"([01][0-9]|[2][0-3]):([0-5][0-9])", "minlen"=>"5", "maxlen"=>"5", "help-string"=>"Time specification hh:mm (e.g. 20:10)"}, "action"=> {"node-type"=>"element", "type"=>"enum", "optional"=>"yes", "enum"=> [{"value"=>"download-only", "help-string"=>"Download but do not install"}, {"value"=>"download-and-install", "help-string"=>"Download and install"}]}} def day_of_week prop_get('day-of-week') end def day_of_week=(val) prop_set('day-of-week', val) end # Time specification hh:mm (e.g. 20:10) def at prop_get('at') end # Time specification hh:mm (e.g. 20:10) def at=(val) prop_set('at', val) end def action prop_get('action') end def action=(val) prop_set('action', val) end end # class Weekly def weekly @subclasses['weekly'] ||= Weekly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Recurring def recurring @subclasses['recurring'] ||= Recurring.new(parent_instance: self, create_children: @create_children) end @props={} end # class WfContent def wf_content @subclasses['wf-content'] ||= WfContent.new(parent_instance: self, create_children: @create_children) end @props={} end # class UpdateSchedule def update_schedule @subclasses['update-schedule'] ||= UpdateSchedule.new(parent_instance: self, create_children: @create_children) end class VmInterface < ConfigClass def has_multiple_values? false end def _section :'vm-interface' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ha1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability", "uiHint-fieldLabel"=>"HA"}, "ha1-backup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability backup service", "uiHint-fieldLabel"=>"HA Backup"}, "cluster-mgmt"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable cluster management service", "uiHint-fieldLabel"=>"Cluster Management"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end # Enable high-availability def ha1 prop_get('ha1') end # Enable high-availability def ha1=(val) prop_set('ha1', val) end # Enable high-availability backup service def ha1_backup prop_get('ha1-backup') end # Enable high-availability backup service def ha1_backup=(val) prop_set('ha1-backup', val) end # Enable cluster management service def cluster_mgmt prop_get('cluster-mgmt') end # Enable cluster management service def cluster_mgmt=(val) prop_set('cluster-mgmt', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "ipv6-address__5"=> {"node-type"=>"element", "optional"=>"yes", "prune-on"=>"fips-mode", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway__6"=> {"node-type"=>"element", "optional"=>"yes", "prune-on"=>"fips-mode", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}, "link-state"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"up", "help-string"=>"Link state up or down", "enum"=>[{"value"=>"up"}, {"value"=>"down"}]}, "dns-server"=> {"node-type"=>"element", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"dns server"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the interface def ipv6_address__5 prop_get('ipv6-address__5') end # IPv6 address for the interface def ipv6_address__5=(val) prop_set('ipv6-address__5', val) end # IPv6 Default gateway def ipv6_default_gateway__6 prop_get('ipv6-default-gateway__6') end # IPv6 Default gateway def ipv6_default_gateway__6=(val) prop_set('ipv6-default-gateway__6', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end # Link state up or down def link_state prop_get('link-state') end # Link state up or down def link_state=(val) prop_set('link-state', val) end # dns server def dns_server prop_get('dns-server') end # dns server def dns_server=(val) prop_set('dns-server', val) end end # class VmInterface def vm_interface @subclasses['vm-interface'] ||= VmInterface.new(parent_instance: self, create_children: @create_children) end class GeoLocation < ConfigClass def has_multiple_values? false end def _section :'geo-location' end @props={"latitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"-90.0", "max"=>"90.0", "help-string"=>"latitude coordinate"}, "longitude"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"float", "min"=>"-180.0", "max"=>"180.0", "help-string"=>"longitude coordinate"}} # latitude coordinate def latitude prop_get('latitude') end # latitude coordinate def latitude=(val) prop_set('latitude', val) end # longitude coordinate def longitude prop_get('longitude') end # longitude coordinate def longitude=(val) prop_set('longitude', val) end end # class GeoLocation def geo_location @subclasses['geo-location'] ||= GeoLocation.new(parent_instance: self, create_children: @create_children) end class Eth2 < ConfigClass def has_multiple_values? false end def _section :'eth2' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ha1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability", "uiHint-fieldLabel"=>"HA"}, "ha1-backup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability backup service", "uiHint-fieldLabel"=>"HA Backup"}, "cluster-mgmt"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable cluster management service", "uiHint-fieldLabel"=>"Cluster Management"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end # Enable high-availability def ha1 prop_get('ha1') end # Enable high-availability def ha1=(val) prop_set('ha1', val) end # Enable high-availability backup service def ha1_backup prop_get('ha1-backup') end # Enable high-availability backup service def ha1_backup=(val) prop_set('ha1-backup', val) end # Enable cluster management service def cluster_mgmt prop_get('cluster-mgmt') end # Enable cluster management service def cluster_mgmt=(val) prop_set('cluster-mgmt', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "ipv6-address__5"=> {"node-type"=>"element", "optional"=>"yes", "prune-on"=>"fips-mode", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway__6"=> {"node-type"=>"element", "optional"=>"yes", "prune-on"=>"fips-mode", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the interface def ipv6_address__5 prop_get('ipv6-address__5') end # IPv6 address for the interface def ipv6_address__5=(val) prop_set('ipv6-address__5', val) end # IPv6 Default gateway def ipv6_default_gateway__6 prop_get('ipv6-default-gateway__6') end # IPv6 Default gateway def ipv6_default_gateway__6=(val) prop_set('ipv6-default-gateway__6', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth2 def eth2 @subclasses['eth2'] ||= Eth2.new(parent_instance: self, create_children: @create_children) end class Eth3 < ConfigClass def has_multiple_values? false end def _section :'eth3' end class Service < ConfigClass def has_multiple_values? false end def _section :'service' end @props={"disable-icmp"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "disable-ssh"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}, "ha1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability", "uiHint-fieldLabel"=>"HA"}, "ha1-backup"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability backup service", "uiHint-fieldLabel"=>"HA Backup"}, "cluster-mgmt"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable cluster management service", "uiHint-fieldLabel"=>"Cluster Management"}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}} def disable_icmp prop_get('disable-icmp') end def disable_icmp=(val) prop_set('disable-icmp', val) end def disable_ssh prop_get('disable-ssh') end def disable_ssh=(val) prop_set('disable-ssh', val) end # Enable high-availability def ha1 prop_get('ha1') end # Enable high-availability def ha1=(val) prop_set('ha1', val) end # Enable high-availability backup service def ha1_backup prop_get('ha1-backup') end # Enable high-availability backup service def ha1_backup=(val) prop_set('ha1-backup', val) end # Enable cluster management service def cluster_mgmt prop_get('cluster-mgmt') end # Enable cluster management service def cluster_mgmt=(val) prop_set('cluster-mgmt', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end end # class Service def service @subclasses['service'] ||= Service.new(parent_instance: self, create_children: @create_children) end class PermittedIp < XML::ConfigClass def has_multiple_values? true end def _section :'permitted-ip' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end @props={"@name"=> {"node-type"=>"attr-req", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"ip address/prefix"}} # ip address/prefix def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class PermittedIp def permitted_ip if @create_children @subclasses['permitted-ip'] ||= PermittedIp.new(parent_instance: self, create_children: @create_children) else PermittedIp.new(parent_instance: self) end end @props={"speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "ipv6-address__5"=> {"node-type"=>"element", "optional"=>"yes", "prune-on"=>"fips-mode", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the interface"}, "ipv6-default-gateway__6"=> {"node-type"=>"element", "optional"=>"yes", "prune-on"=>"fips-mode", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}} # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # IPv6 address for the interface def ipv6_address__5 prop_get('ipv6-address__5') end # IPv6 address for the interface def ipv6_address__5=(val) prop_set('ipv6-address__5', val) end # IPv6 Default gateway def ipv6_default_gateway__6 prop_get('ipv6-default-gateway__6') end # IPv6 Default gateway def ipv6_default_gateway__6=(val) prop_set('ipv6-default-gateway__6', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end end # class Eth3 def eth3 @subclasses['eth3'] ||= Eth3.new(parent_instance: self, create_children: @create_children) end @props={"hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[a-zA-Z0-9\\._-]+$", "minlen"=>"1", "maxlen"=>"32", "help-string"=>"alphanumeric string [a-zA-Z0-9._-]"}, "ip-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "disallow-loopback"=>"yes", "disallow-zero-addr"=>"yes", "help-string"=>"IP address for the interface"}, "netmask"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "subtype"=>"ip-address", "help-string"=>"IP netmask for the interface"}, "default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-only"=>"yes", "help-string"=>"Default gateway"}, "mtu"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"576", "max"=>"1500", "default"=>"1500", "help-string"=>"Maximum Transmission Unit for the interface"}, "speed-duplex"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"auto-negotiate", "help-string"=>"Speed and duplex for the interface", "enum"=> [{"value"=>"auto-negotiate"}, {"value"=>"10Mbps-half-duplex"}, {"value"=>"10Mbps-full-duplex"}, {"value"=>"100Mbps-half-duplex"}, {"value"=>"100Mbps-full-duplex"}, {"value"=>"1Gbps-half-duplex"}, {"value"=>"1Gbps-full-duplex"}]}, "ipv6-address"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "unicast-with-mask"=>"yes", "ipv6-only"=>"yes", "help-string"=>"IPv6 address for the management interface"}, "ipv6-default-gateway"=> {"node-type"=>"element", "optional"=>"yes", "unicast-only"=>"yes", "type"=>"ipspec", "help-string"=>"IPv6 Default gateway"}, "authentication-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "help-string"=> "Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported.", "autocomplete"=>"yes", "memberof"=> ["##/panorama/authentication-profile/entry[method/radius]/@name", "##/panorama/authentication-profile/entry[method/tacplus]/@name", "##/panorama/authentication-sequence/entry/@name"]}, "timezone"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "enum"=> [{"value"=>"Africa/Abidjan"}, {"value"=>"Africa/Accra"}, {"value"=>"Africa/Addis_Ababa"}, {"value"=>"Africa/Algiers"}, {"value"=>"Africa/Asmara"}, {"value"=>"Africa/Asmera"}, {"value"=>"Africa/Bamako"}, {"value"=>"Africa/Bangui"}, {"value"=>"Africa/Banjul"}, {"value"=>"Africa/Bissau"}, {"value"=>"Africa/Blantyre"}, {"value"=>"Africa/Brazzaville"}, {"value"=>"Africa/Bujumbura"}, {"value"=>"Africa/Cairo"}, {"value"=>"Africa/Casablanca"}, {"value"=>"Africa/Ceuta"}, {"value"=>"Africa/Conakry"}, {"value"=>"Africa/Dakar"}, {"value"=>"Africa/Dar_es_Salaam"}, {"value"=>"Africa/Djibouti"}, {"value"=>"Africa/Douala"}, {"value"=>"Africa/El_Aaiun"}, {"value"=>"Africa/Freetown"}, {"value"=>"Africa/Gaborone"}, {"value"=>"Africa/Harare"}, {"value"=>"Africa/Johannesburg"}, {"value"=>"Africa/Kampala"}, {"value"=>"Africa/Khartoum"}, {"value"=>"Africa/Kigali"}, {"value"=>"Africa/Kinshasa"}, {"value"=>"Africa/Lagos"}, {"value"=>"Africa/Libreville"}, {"value"=>"Africa/Lome"}, {"value"=>"Africa/Luanda"}, {"value"=>"Africa/Lubumbashi"}, {"value"=>"Africa/Lusaka"}, {"value"=>"Africa/Malabo"}, {"value"=>"Africa/Maputo"}, {"value"=>"Africa/Maseru"}, {"value"=>"Africa/Mbabane"}, {"value"=>"Africa/Mogadishu"}, {"value"=>"Africa/Monrovia"}, {"value"=>"Africa/Nairobi"}, {"value"=>"Africa/Ndjamena"}, {"value"=>"Africa/Niamey"}, {"value"=>"Africa/Nouakchott"}, {"value"=>"Africa/Ouagadougou"}, {"value"=>"Africa/Porto-Novo"}, {"value"=>"Africa/Sao_Tome"}, {"value"=>"Africa/Timbuktu"}, {"value"=>"Africa/Tripoli"}, {"value"=>"Africa/Tunis"}, {"value"=>"Africa/Windhoek"}, {"value"=>"America/Adak"}, {"value"=>"America/Anchorage"}, {"value"=>"America/Anguilla"}, {"value"=>"America/Antigua"}, {"value"=>"America/Araguaina"}, {"value"=>"America/Argentina/Buenos_Aires"}, {"value"=>"America/Argentina/Catamarca"}, {"value"=>"America/Argentina/ComodRivadavia"}, {"value"=>"America/Argentina/Cordoba"}, {"value"=>"America/Argentina/Jujuy"}, {"value"=>"America/Argentina/La_Rioja"}, {"value"=>"America/Argentina/Mendoza"}, {"value"=>"America/Argentina/Rio_Gallegos"}, {"value"=>"America/Argentina/Salta"}, {"value"=>"America/Argentina/San_Juan"}, {"value"=>"America/Argentina/San_Luis"}, {"value"=>"America/Argentina/Tucuman"}, {"value"=>"America/Argentina/Ushuaia"}, {"value"=>"America/Aruba"}, {"value"=>"America/Asuncion"}, {"value"=>"America/Atikokan"}, {"value"=>"America/Atka"}, {"value"=>"America/Bahia"}, {"value"=>"America/Barbados"}, {"value"=>"America/Belem"}, {"value"=>"America/Belize"}, {"value"=>"America/Blanc-Sablon"}, {"value"=>"America/Boa_Vista"}, {"value"=>"America/Bogota"}, {"value"=>"America/Boise"}, {"value"=>"America/Buenos_Aires"}, {"value"=>"America/Cambridge_Bay"}, {"value"=>"America/Campo_Grande"}, {"value"=>"America/Cancun"}, {"value"=>"America/Caracas"}, {"value"=>"America/Catamarca"}, {"value"=>"America/Cayenne"}, {"value"=>"America/Cayman"}, {"value"=>"America/Chicago"}, {"value"=>"America/Chihuahua"}, {"value"=>"America/Coral_Harbour"}, {"value"=>"America/Cordoba"}, {"value"=>"America/Costa_Rica"}, {"value"=>"America/Cuiaba"}, {"value"=>"America/Curacao"}, {"value"=>"America/Danmarkshavn"}, {"value"=>"America/Dawson"}, {"value"=>"America/Dawson_Creek"}, {"value"=>"America/Denver"}, {"value"=>"America/Detroit"}, {"value"=>"America/Dominica"}, {"value"=>"America/Edmonton"}, {"value"=>"America/Eirunepe"}, {"value"=>"America/El_Salvador"}, {"value"=>"America/Ensenada"}, {"value"=>"America/Fortaleza"}, {"value"=>"America/Fort_Wayne"}, {"value"=>"America/Glace_Bay"}, {"value"=>"America/Godthab"}, {"value"=>"America/Goose_Bay"}, {"value"=>"America/Grand_Turk"}, {"value"=>"America/Grenada"}, {"value"=>"America/Guadeloupe"}, {"value"=>"America/Guatemala"}, {"value"=>"America/Guayaquil"}, {"value"=>"America/Guyana"}, {"value"=>"America/Halifax"}, {"value"=>"America/Havana"}, {"value"=>"America/Hermosillo"}, {"value"=>"America/Indiana/Indianapolis"}, {"value"=>"America/Indiana/Knox"}, {"value"=>"America/Indiana/Marengo"}, {"value"=>"America/Indiana/Petersburg"}, {"value"=>"America/Indianapolis"}, {"value"=>"America/Indiana/Tell_City"}, {"value"=>"America/Indiana/Vevay"}, {"value"=>"America/Indiana/Vincennes"}, {"value"=>"America/Indiana/Winamac"}, {"value"=>"America/Inuvik"}, {"value"=>"America/Iqaluit"}, {"value"=>"America/Jamaica"}, {"value"=>"America/Jujuy"}, {"value"=>"America/Juneau"}, {"value"=>"America/Kentucky/Louisville"}, {"value"=>"America/Kentucky/Monticello"}, {"value"=>"America/Knox_IN"}, {"value"=>"America/La_Paz"}, {"value"=>"America/Lima"}, {"value"=>"America/Los_Angeles"}, {"value"=>"America/Louisville"}, {"value"=>"America/Maceio"}, {"value"=>"America/Managua"}, {"value"=>"America/Manaus"}, {"value"=>"America/Marigot"}, {"value"=>"America/Martinique"}, {"value"=>"America/Mazatlan"}, {"value"=>"America/Mendoza"}, {"value"=>"America/Menominee"}, {"value"=>"America/Merida"}, {"value"=>"America/Mexico_City"}, {"value"=>"America/Miquelon"}, {"value"=>"America/Moncton"}, {"value"=>"America/Monterrey"}, {"value"=>"America/Montevideo"}, {"value"=>"America/Montreal"}, {"value"=>"America/Montserrat"}, {"value"=>"America/Nassau"}, {"value"=>"America/New_York"}, {"value"=>"America/Nipigon"}, {"value"=>"America/Nome"}, {"value"=>"America/Noronha"}, {"value"=>"America/North_Dakota/Center"}, {"value"=>"America/North_Dakota/New_Salem"}, {"value"=>"America/Panama"}, {"value"=>"America/Pangnirtung"}, {"value"=>"America/Paramaribo"}, {"value"=>"America/Phoenix"}, {"value"=>"America/Port-au-Prince"}, {"value"=>"America/Porto_Acre"}, {"value"=>"America/Port_of_Spain"}, {"value"=>"America/Porto_Velho"}, {"value"=>"America/Puerto_Rico"}, {"value"=>"America/Rainy_River"}, {"value"=>"America/Rankin_Inlet"}, {"value"=>"America/Recife"}, {"value"=>"America/Regina"}, {"value"=>"America/Resolute"}, {"value"=>"America/Rio_Branco"}, {"value"=>"America/Rosario"}, {"value"=>"America/Santarem"}, {"value"=>"America/Santiago"}, {"value"=>"America/Santo_Domingo"}, {"value"=>"America/Sao_Paulo"}, {"value"=>"America/Scoresbysund"}, {"value"=>"America/Shiprock"}, {"value"=>"America/St_Barthelemy"}, {"value"=>"America/St_Johns"}, {"value"=>"America/St_Kitts"}, {"value"=>"America/St_Lucia"}, {"value"=>"America/St_Thomas"}, {"value"=>"America/St_Vincent"}, {"value"=>"America/Swift_Current"}, {"value"=>"America/Tegucigalpa"}, {"value"=>"America/Thule"}, {"value"=>"America/Thunder_Bay"}, {"value"=>"America/Tijuana"}, {"value"=>"America/Toronto"}, {"value"=>"America/Tortola"}, {"value"=>"America/Vancouver"}, {"value"=>"America/Virgin"}, {"value"=>"America/Whitehorse"}, {"value"=>"America/Winnipeg"}, {"value"=>"America/Yakutat"}, {"value"=>"America/Yellowknife"}, {"value"=>"Antarctica/Casey"}, {"value"=>"Antarctica/Davis"}, {"value"=>"Antarctica/DumontDUrville"}, {"value"=>"Antarctica/Mawson"}, {"value"=>"Antarctica/McMurdo"}, {"value"=>"Antarctica/Palmer"}, {"value"=>"Antarctica/Rothera"}, {"value"=>"Antarctica/South_Pole"}, {"value"=>"Antarctica/Syowa"}, {"value"=>"Antarctica/Vostok"}, {"value"=>"Arctic/Longyearbyen"}, {"value"=>"Asia/Aden"}, {"value"=>"Asia/Almaty"}, {"value"=>"Asia/Amman"}, {"value"=>"Asia/Anadyr"}, {"value"=>"Asia/Aqtau"}, {"value"=>"Asia/Aqtobe"}, {"value"=>"Asia/Ashgabat"}, {"value"=>"Asia/Ashkhabad"}, {"value"=>"Asia/Baghdad"}, {"value"=>"Asia/Bahrain"}, {"value"=>"Asia/Baku"}, {"value"=>"Asia/Bangkok"}, {"value"=>"Asia/Beirut"}, {"value"=>"Asia/Bishkek"}, {"value"=>"Asia/Brunei"}, {"value"=>"Asia/Calcutta"}, {"value"=>"Asia/Choibalsan"}, {"value"=>"Asia/Chongqing"}, {"value"=>"Asia/Chungking"}, {"value"=>"Asia/Colombo"}, {"value"=>"Asia/Dacca"}, {"value"=>"Asia/Damascus"}, {"value"=>"Asia/Dhaka"}, {"value"=>"Asia/Dili"}, {"value"=>"Asia/Dubai"}, {"value"=>"Asia/Dushanbe"}, {"value"=>"Asia/Gaza"}, {"value"=>"Asia/Harbin"}, {"value"=>"Asia/Ho_Chi_Minh"}, {"value"=>"Asia/Hong_Kong"}, {"value"=>"Asia/Hovd"}, {"value"=>"Asia/Irkutsk"}, {"value"=>"Asia/Istanbul"}, {"value"=>"Asia/Jakarta"}, {"value"=>"Asia/Jayapura"}, {"value"=>"Asia/Jerusalem"}, {"value"=>"Asia/Kabul"}, {"value"=>"Asia/Kamchatka"}, {"value"=>"Asia/Karachi"}, {"value"=>"Asia/Kashgar"}, {"value"=>"Asia/Kathmandu"}, {"value"=>"Asia/Katmandu"}, {"value"=>"Asia/Kolkata"}, {"value"=>"Asia/Krasnoyarsk"}, {"value"=>"Asia/Kuala_Lumpur"}, {"value"=>"Asia/Kuching"}, {"value"=>"Asia/Kuwait"}, {"value"=>"Asia/Macao"}, {"value"=>"Asia/Macau"}, {"value"=>"Asia/Magadan"}, {"value"=>"Asia/Makassar"}, {"value"=>"Asia/Manila"}, {"value"=>"Asia/Muscat"}, {"value"=>"Asia/Nicosia"}, {"value"=>"Asia/Novokuznetsk"}, {"value"=>"Asia/Novosibirsk"}, {"value"=>"Asia/Omsk"}, {"value"=>"Asia/Oral"}, {"value"=>"Asia/Phnom_Penh"}, {"value"=>"Asia/Pontianak"}, {"value"=>"Asia/Pyongyang"}, {"value"=>"Asia/Qatar"}, {"value"=>"Asia/Qyzylorda"}, {"value"=>"Asia/Rangoon"}, {"value"=>"Asia/Riyadh"}, {"value"=>"Asia/Riyadh87"}, {"value"=>"Asia/Riyadh88"}, {"value"=>"Asia/Riyadh89"}, {"value"=>"Asia/Saigon"}, {"value"=>"Asia/Sakhalin"}, {"value"=>"Asia/Samarkand"}, {"value"=>"Asia/Seoul"}, {"value"=>"Asia/Shanghai"}, {"value"=>"Asia/Singapore"}, {"value"=>"Asia/Taipei"}, {"value"=>"Asia/Tashkent"}, {"value"=>"Asia/Tbilisi"}, {"value"=>"Asia/Tehran"}, {"value"=>"Asia/Tel_Aviv"}, {"value"=>"Asia/Thimbu"}, {"value"=>"Asia/Thimphu"}, {"value"=>"Asia/Tokyo"}, {"value"=>"Asia/Ujung_Pandang"}, {"value"=>"Asia/Ulaanbaatar"}, {"value"=>"Asia/Ulan_Bator"}, {"value"=>"Asia/Urumqi"}, {"value"=>"Asia/Vientiane"}, {"value"=>"Asia/Vladivostok"}, {"value"=>"Asia/Yakutsk"}, {"value"=>"Asia/Yekaterinburg"}, {"value"=>"Asia/Yerevan"}, {"value"=>"Atlantic/Azores"}, {"value"=>"Atlantic/Bermuda"}, {"value"=>"Atlantic/Canary"}, {"value"=>"Atlantic/Cape_Verde"}, {"value"=>"Atlantic/Faeroe"}, {"value"=>"Atlantic/Faroe"}, {"value"=>"Atlantic/Jan_Mayen"}, {"value"=>"Atlantic/Madeira"}, {"value"=>"Atlantic/Reykjavik"}, {"value"=>"Atlantic/South_Georgia"}, {"value"=>"Atlantic/Stanley"}, {"value"=>"Atlantic/St_Helena"}, {"value"=>"Australia/ACT"}, {"value"=>"Australia/Adelaide"}, {"value"=>"Australia/Brisbane"}, {"value"=>"Australia/Broken_Hill"}, {"value"=>"Australia/Canberra"}, {"value"=>"Australia/Currie"}, {"value"=>"Australia/Darwin"}, {"value"=>"Australia/Eucla"}, {"value"=>"Australia/Hobart"}, {"value"=>"Australia/LHI"}, {"value"=>"Australia/Lindeman"}, {"value"=>"Australia/Lord_Howe"}, {"value"=>"Australia/Melbourne"}, {"value"=>"Australia/North"}, {"value"=>"Australia/NSW"}, {"value"=>"Australia/Perth"}, {"value"=>"Australia/Queensland"}, {"value"=>"Australia/South"}, {"value"=>"Australia/Sydney"}, {"value"=>"Australia/Tasmania"}, {"value"=>"Australia/Victoria"}, {"value"=>"Australia/West"}, {"value"=>"Australia/Yancowinna"}, {"value"=>"Brazil/Acre"}, {"value"=>"Brazil/DeNoronha"}, {"value"=>"Brazil/East"}, {"value"=>"Brazil/West"}, {"value"=>"Canada/Atlantic"}, {"value"=>"Canada/Central"}, {"value"=>"Canada/Eastern"}, {"value"=>"Canada/East-Saskatchewan"}, {"value"=>"Canada/Mountain"}, {"value"=>"Canada/Newfoundland"}, {"value"=>"Canada/Pacific"}, {"value"=>"Canada/Saskatchewan"}, {"value"=>"Canada/Yukon"}, {"value"=>"CET"}, {"value"=>"Chile/Continental"}, {"value"=>"Chile/EasterIsland"}, {"value"=>"CST6CDT"}, {"value"=>"Cuba"}, {"value"=>"EET"}, {"value"=>"Egypt"}, {"value"=>"Eire"}, {"value"=>"EST"}, {"value"=>"EST5EDT"}, {"value"=>"Etc/GMT"}, {"value"=>"Etc/GMT0"}, {"value"=>"Etc/GMT-0"}, {"value"=>"Etc/GMT+0"}, {"value"=>"Etc/GMT-1"}, {"value"=>"Etc/GMT+1"}, {"value"=>"Etc/GMT-10"}, {"value"=>"Etc/GMT+10"}, {"value"=>"Etc/GMT-11"}, {"value"=>"Etc/GMT+11"}, {"value"=>"Etc/GMT-12"}, {"value"=>"Etc/GMT+12"}, {"value"=>"Etc/GMT-13"}, {"value"=>"Etc/GMT-14"}, {"value"=>"Etc/GMT-2"}, {"value"=>"Etc/GMT+2"}, {"value"=>"Etc/GMT-3"}, {"value"=>"Etc/GMT+3"}, {"value"=>"Etc/GMT-4"}, {"value"=>"Etc/GMT+4"}, {"value"=>"Etc/GMT-5"}, {"value"=>"Etc/GMT+5"}, {"value"=>"Etc/GMT-6"}, {"value"=>"Etc/GMT+6"}, {"value"=>"Etc/GMT-7"}, {"value"=>"Etc/GMT+7"}, {"value"=>"Etc/GMT-8"}, {"value"=>"Etc/GMT+8"}, {"value"=>"Etc/GMT-9"}, {"value"=>"Etc/GMT+9"}, {"value"=>"Etc/Greenwich"}, {"value"=>"Etc/UCT"}, {"value"=>"Etc/Universal"}, {"value"=>"Etc/UTC"}, {"value"=>"Etc/Zulu"}, {"value"=>"Europe/Amsterdam"}, {"value"=>"Europe/Andorra"}, {"value"=>"Europe/Athens"}, {"value"=>"Europe/Belfast"}, {"value"=>"Europe/Belgrade"}, {"value"=>"Europe/Berlin"}, {"value"=>"Europe/Bratislava"}, {"value"=>"Europe/Brussels"}, {"value"=>"Europe/Bucharest"}, {"value"=>"Europe/Budapest"}, {"value"=>"Europe/Chisinau"}, {"value"=>"Europe/Copenhagen"}, {"value"=>"Europe/Dublin"}, {"value"=>"Europe/Gibraltar"}, {"value"=>"Europe/Guernsey"}, {"value"=>"Europe/Helsinki"}, {"value"=>"Europe/Isle_of_Man"}, {"value"=>"Europe/Istanbul"}, {"value"=>"Europe/Jersey"}, {"value"=>"Europe/Kaliningrad"}, {"value"=>"Europe/Kiev"}, {"value"=>"Europe/Lisbon"}, {"value"=>"Europe/Ljubljana"}, {"value"=>"Europe/London"}, {"value"=>"Europe/Luxembourg"}, {"value"=>"Europe/Madrid"}, {"value"=>"Europe/Malta"}, {"value"=>"Europe/Mariehamn"}, {"value"=>"Europe/Minsk"}, {"value"=>"Europe/Monaco"}, {"value"=>"Europe/Moscow"}, {"value"=>"Europe/Nicosia"}, {"value"=>"Europe/Oslo"}, {"value"=>"Europe/Paris"}, {"value"=>"Europe/Podgorica"}, {"value"=>"Europe/Prague"}, {"value"=>"Europe/Riga"}, {"value"=>"Europe/Rome"}, {"value"=>"Europe/Samara"}, {"value"=>"Europe/San_Marino"}, {"value"=>"Europe/Sarajevo"}, {"value"=>"Europe/Simferopol"}, {"value"=>"Europe/Skopje"}, {"value"=>"Europe/Sofia"}, {"value"=>"Europe/Stockholm"}, {"value"=>"Europe/Tallinn"}, {"value"=>"Europe/Tirane"}, {"value"=>"Europe/Tiraspol"}, {"value"=>"Europe/Uzhgorod"}, {"value"=>"Europe/Vaduz"}, {"value"=>"Europe/Vatican"}, {"value"=>"Europe/Vienna"}, {"value"=>"Europe/Vilnius"}, {"value"=>"Europe/Volgograd"}, {"value"=>"Europe/Warsaw"}, {"value"=>"Europe/Zagreb"}, {"value"=>"Europe/Zaporozhye"}, {"value"=>"Europe/Zurich"}, {"value"=>"Factory"}, {"value"=>"GB"}, {"value"=>"GB-Eire"}, {"value"=>"GMT"}, {"value"=>"GMT0"}, {"value"=>"GMT-0"}, {"value"=>"GMT+0"}, {"value"=>"Greenwich"}, {"value"=>"Hongkong"}, {"value"=>"HST"}, {"value"=>"Iceland"}, {"value"=>"Indian/Antananarivo"}, {"value"=>"Indian/Chagos"}, {"value"=>"Indian/Christmas"}, {"value"=>"Indian/Cocos"}, {"value"=>"Indian/Comoro"}, {"value"=>"Indian/Kerguelen"}, {"value"=>"Indian/Mahe"}, {"value"=>"Indian/Maldives"}, {"value"=>"Indian/Mauritius"}, {"value"=>"Indian/Mayotte"}, {"value"=>"Indian/Reunion"}, {"value"=>"Iran"}, {"value"=>"Israel"}, {"value"=>"Jamaica"}, {"value"=>"Japan"}, {"value"=>"Kwajalein"}, {"value"=>"Libya"}, {"value"=>"MET"}, {"value"=>"Mexico/BajaNorte"}, {"value"=>"Mexico/BajaSur"}, {"value"=>"Mexico/General"}, {"value"=>"Mideast/Riyadh87"}, {"value"=>"Mideast/Riyadh88"}, {"value"=>"Mideast/Riyadh89"}, {"value"=>"MST"}, {"value"=>"MST7MDT"}, {"value"=>"Navajo"}, {"value"=>"NZ"}, {"value"=>"NZ-CHAT"}, {"value"=>"Pacific/Apia"}, {"value"=>"Pacific/Auckland"}, {"value"=>"Pacific/Chatham"}, {"value"=>"Pacific/Easter"}, {"value"=>"Pacific/Efate"}, {"value"=>"Pacific/Enderbury"}, {"value"=>"Pacific/Fakaofo"}, {"value"=>"Pacific/Fiji"}, {"value"=>"Pacific/Funafuti"}, {"value"=>"Pacific/Galapagos"}, {"value"=>"Pacific/Gambier"}, {"value"=>"Pacific/Guadalcanal"}, {"value"=>"Pacific/Guam"}, {"value"=>"Pacific/Honolulu"}, {"value"=>"Pacific/Johnston"}, {"value"=>"Pacific/Kiritimati"}, {"value"=>"Pacific/Kosrae"}, {"value"=>"Pacific/Kwajalein"}, {"value"=>"Pacific/Majuro"}, {"value"=>"Pacific/Marquesas"}, {"value"=>"Pacific/Midway"}, {"value"=>"Pacific/Nauru"}, {"value"=>"Pacific/Niue"}, {"value"=>"Pacific/Norfolk"}, {"value"=>"Pacific/Noumea"}, {"value"=>"Pacific/Pago_Pago"}, {"value"=>"Pacific/Palau"}, {"value"=>"Pacific/Pitcairn"}, {"value"=>"Pacific/Ponape"}, {"value"=>"Pacific/Port_Moresby"}, {"value"=>"Pacific/Rarotonga"}, {"value"=>"Pacific/Saipan"}, {"value"=>"Pacific/Samoa"}, {"value"=>"Pacific/Tahiti"}, {"value"=>"Pacific/Tarawa"}, {"value"=>"Pacific/Tongatapu"}, {"value"=>"Pacific/Truk"}, {"value"=>"Pacific/Wake"}, {"value"=>"Pacific/Wallis"}, {"value"=>"Pacific/Yap"}, {"value"=>"Poland"}, {"value"=>"Portugal"}, {"value"=>"PRC"}, {"value"=>"PST8PDT"}, {"value"=>"ROC"}, {"value"=>"ROK"}, {"value"=>"Singapore"}, {"value"=>"Turkey"}, {"value"=>"UCT"}, {"value"=>"Universal"}, {"value"=>"US/Alaska"}, {"value"=>"US/Aleutian"}, {"value"=>"US/Arizona"}, {"value"=>"US/Central"}, {"value"=>"US/Eastern"}, {"value"=>"US/East-Indiana"}, {"value"=>"US/Hawaii"}, {"value"=>"US/Indiana-Starke"}, {"value"=>"US/Michigan"}, {"value"=>"US/Mountain"}, {"value"=>"US/Pacific"}, {"value"=>"US/Samoa"}, {"value"=>"UTC"}, {"value"=>"WET"}, {"value"=>"W-SU"}, {"value"=>"Zulu"}]}, "domain"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"32", "subtype"=>"strict-dns-name"}, "panorama-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server (IP address or FQDN)"}, "panorama-server-2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z:./_-])+$", "maxlen"=>"63", "help-string"=>"Panorama server 2 (IP address or FQDN)"}, "login-banner"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"3200"}, "update-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([0-9a-zA-Z./_-])+$", "maxlen"=>"63", "help-string"=>"PaloAlto Networks update server", "default"=>"wildfire.paloaltonetworks.com"}, "server-verification"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Verify update server identity"}, "secure-proxy-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^[^-]([0-9a-zA-Z.:/_-])+$", "maxlen"=>"63", "help-string"=>"Secure Proxy server to use"}, "secure-proxy-port"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"65535", "help-string"=>"Port for secure proxy server"}, "secure-proxy-user"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "help-string"=>"Secure Proxy user name to use"}, "secure-proxy-password"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "encrypt"=>"yes", "help-string"=>"Secure Proxy password to use"}} # alphanumeric string [a-zA-Z0-9._-] def hostname prop_get('hostname') end # alphanumeric string [a-zA-Z0-9._-] def hostname=(val) prop_set('hostname', val) end # IP address for the interface def ip_address prop_get('ip-address') end # IP address for the interface def ip_address=(val) prop_set('ip-address', val) end # IP netmask for the interface def netmask prop_get('netmask') end # IP netmask for the interface def netmask=(val) prop_set('netmask', val) end # Default gateway def default_gateway prop_get('default-gateway') end # Default gateway def default_gateway=(val) prop_set('default-gateway', val) end # Maximum Transmission Unit for the interface def mtu prop_get('mtu') end # Maximum Transmission Unit for the interface def mtu=(val) prop_set('mtu', val) end # Speed and duplex for the interface def speed_duplex prop_get('speed-duplex') end # Speed and duplex for the interface def speed_duplex=(val) prop_set('speed-duplex', val) end # IPv6 address for the management interface def ipv6_address prop_get('ipv6-address') end # IPv6 address for the management interface def ipv6_address=(val) prop_set('ipv6-address', val) end # IPv6 Default gateway def ipv6_default_gateway prop_get('ipv6-default-gateway') end # IPv6 Default gateway def ipv6_default_gateway=(val) prop_set('ipv6-default-gateway', val) end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported. def authentication_profile prop_get('authentication-profile') end # Authentication profile to use for non-local admins. Only RADIUS, TACACS+ and authentication sequence are supported. def authentication_profile=(val) prop_set('authentication-profile', val) end def timezone prop_get('timezone') end def timezone=(val) prop_set('timezone', val) end def domain prop_get('domain') end def domain=(val) prop_set('domain', val) end # Panorama server (IP address or FQDN) def panorama_server prop_get('panorama-server') end # Panorama server (IP address or FQDN) def panorama_server=(val) prop_set('panorama-server', val) end # Panorama server 2 (IP address or FQDN) def panorama_server_2 prop_get('panorama-server-2') end # Panorama server 2 (IP address or FQDN) def panorama_server_2=(val) prop_set('panorama-server-2', val) end def login_banner prop_get('login-banner') end def login_banner=(val) prop_set('login-banner', val) end # PaloAlto Networks update server def update_server prop_get('update-server') end # PaloAlto Networks update server def update_server=(val) prop_set('update-server', val) end # Verify update server identity def server_verification prop_get('server-verification') end # Verify update server identity def server_verification=(val) prop_set('server-verification', val) end # Secure Proxy server to use def secure_proxy_server prop_get('secure-proxy-server') end # Secure Proxy server to use def secure_proxy_server=(val) prop_set('secure-proxy-server', val) end # Port for secure proxy server def secure_proxy_port prop_get('secure-proxy-port') end # Port for secure proxy server def secure_proxy_port=(val) prop_set('secure-proxy-port', val) end # Secure Proxy user name to use def secure_proxy_user prop_get('secure-proxy-user') end # Secure Proxy user name to use def secure_proxy_user=(val) prop_set('secure-proxy-user', val) end # Secure Proxy password to use def secure_proxy_password prop_get('secure-proxy-password') end # Secure Proxy password to use def secure_proxy_password=(val) prop_set('secure-proxy-password', val) end end # class System def system @subclasses['system'] ||= System.new(parent_instance: self, create_children: @create_children) end class Setting < ConfigClass def has_multiple_values? false end def _section :'setting' end class Wildfire < ConfigClass def has_multiple_values? false end def _section :'wildfire' end class CloudIntelligence < ConfigClass def has_multiple_values? false end def _section :'cloud-intelligence' end @props={"submit-report"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Automatically submit xml report of malwares to public cloud, turned off when submit-sample is on", "ui-hint"=>"\"fieldLabel\": \"Send Analysis Data\""}, "submit-sample"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Automatically submit malwares to public cloud", "ui-hint"=>"\"fieldLabel\": \"Send Malicious Samples\""}, "submit-diagnostics"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Automatically diagnostic and statistic information to public cloud.", "ui-hint"=>"\"fieldLabel\": \"Send Diagnostics\""}, "cloud-query"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Automatically query public cloud before local analysis", "ui-hint"=>"\"fieldLabel\": \"Verdict Lookup\""}} # Automatically submit xml report of malwares to public cloud, turned off when submit-sample is on def submit_report prop_get('submit-report') end # Automatically submit xml report of malwares to public cloud, turned off when submit-sample is on def submit_report=(val) prop_set('submit-report', val) end # Automatically submit malwares to public cloud def submit_sample prop_get('submit-sample') end # Automatically submit malwares to public cloud def submit_sample=(val) prop_set('submit-sample', val) end # Automatically diagnostic and statistic information to public cloud. def submit_diagnostics prop_get('submit-diagnostics') end # Automatically diagnostic and statistic information to public cloud. def submit_diagnostics=(val) prop_set('submit-diagnostics', val) end # Automatically query public cloud before local analysis def cloud_query prop_get('cloud-query') end # Automatically query public cloud before local analysis def cloud_query=(val) prop_set('cloud-query', val) end end # class CloudIntelligence def cloud_intelligence @subclasses['cloud-intelligence'] ||= CloudIntelligence.new(parent_instance: self, create_children: @create_children) end class SignatureGeneration < ConfigClass def has_multiple_values? false end def _section :'signature-generation' end @props={"av"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Generate AV signatures"}, "dns"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Generate DNS signatures"}, "url"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"yes", "help-string"=>"Generate URL signatures"}} # Generate AV signatures def av prop_get('av') end # Generate AV signatures def av=(val) prop_set('av', val) end # Generate DNS signatures def dns prop_get('dns') end # Generate DNS signatures def dns=(val) prop_set('dns', val) end # Generate URL signatures def url prop_get('url') end # Generate URL signatures def url=(val) prop_set('url', val) end end # class SignatureGeneration def signature_generation @subclasses['signature-generation'] ||= SignatureGeneration.new(parent_instance: self, create_children: @create_children) end class FileRetention < ConfigClass def has_multiple_values? false end def _section :'file-retention' end @props={"non-malicious"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"90", "default"=>"14", "help-string"=>"Benign/Grayware file retention (days). Default is 14.", "ui-hint"=>"\"unitText\": \"days\",\"fieldLabel\": \"Benign/Grayware\""}, "malicious"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "default"=>"indefinite", "help-string"=>"Malicious file retention (indefinite or days)", "ui-hint"=>"\"unitText\": \"days\",\"fieldLabel\": \"Malicious\"", "multi-types"=> {"rangedint"=> {"min"=>"1", "max"=>"2000", "help-string"=>"Keep from 1 to 2000 days"}, "enum"=> [{"value"=>"indefinite", "help-string"=>"Keep indefinitely (default)"}]}}} # Benign/Grayware file retention (days). Default is 14. def non_malicious prop_get('non-malicious') end # Benign/Grayware file retention (days). Default is 14. def non_malicious=(val) prop_set('non-malicious', val) end # Malicious file retention (indefinite or days) def malicious prop_get('malicious') end # Malicious file retention (indefinite or days) def malicious=(val) prop_set('malicious', val) end end # class FileRetention def file_retention @subclasses['file-retention'] ||= FileRetention.new(parent_instance: self, create_children: @create_children) end @props={"active-vm"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"10", "default"=>"vm-5", "optional"=>"yes", "complete-handler"=>"wf-appliance-vm-images-completer", "ui-hint"=>"\"fieldLabel\": \"Sample Analysis Image\""}, "cloud-server"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>"^([a-zA-Z0-9./_-])+$", "minlen"=>"1", "maxlen"=>"63", "default"=>"wildfire.paloaltonetworks.com", "help-string"=> "Hostname for cloud server. Default is wildfire-public-cloud"}, "vm-network-enable"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable", "ui-hint"=>"\"fieldLabel\": \"Environment Networking\""}, "vm-network-use-tor"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"enable/disable", "ui-hint"=>"\"fieldLabel\": \"Anonymous Networking\""}, "custom-dns-name"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "minlen"=>"1", "maxlen"=>"253", "subtype"=>"strict-dns-name", "ui-hint"=>"\"fieldLabel\": \"External Load Balancer\"", "help-string"=> "use this dns name instead of the default (wfpc.service..) in server certificate and WildFire server list"}, "preferred-analysis-environment"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "default"=>"default", "help-string"=>"Set analysis resources allocation preference", "enum"=> [{"value"=>"default", "help-string"=>"No analysis resources allocation preference"}, {"value"=>"Executables", "help-string"=>"Analysis resources allocation preference: Executables"}, {"value"=>"Documents", "help-string"=>"Analysis resources allocation preference: Documents"}]}} def active_vm prop_get('active-vm') end def active_vm=(val) prop_set('active-vm', val) end # Hostname for cloud server. Default is wildfire-public-cloud def cloud_server prop_get('cloud-server') end # Hostname for cloud server. Default is wildfire-public-cloud def cloud_server=(val) prop_set('cloud-server', val) end # enable/disable def vm_network_enable prop_get('vm-network-enable') end # enable/disable def vm_network_enable=(val) prop_set('vm-network-enable', val) end # enable/disable def vm_network_use_tor prop_get('vm-network-use-tor') end # enable/disable def vm_network_use_tor=(val) prop_set('vm-network-use-tor', val) end # use this dns name instead of the default (wfpc.service..) in server certificate and WildFire server list def custom_dns_name prop_get('custom-dns-name') end # use this dns name instead of the default (wfpc.service..) in server certificate and WildFire server list def custom_dns_name=(val) prop_set('custom-dns-name', val) end # Set analysis resources allocation preference def preferred_analysis_environment prop_get('preferred-analysis-environment') end # Set analysis resources allocation preference def preferred_analysis_environment=(val) prop_set('preferred-analysis-environment', val) end end # class Wildfire def wildfire @subclasses['wildfire'] ||= Wildfire.new(parent_instance: self, create_children: @create_children) end class Management < ConfigClass def has_multiple_values? false end def _section :'management' end class Api < ConfigClass def has_multiple_values? false end def _section :'api' end class Key < ConfigClass def has_multiple_values? false end def _section :'key' end @props={"lifetime"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"api key lifetime in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"525600"}, "enum"=>[{"value"=>"0", "help-string"=>"never"}]}}} # api key lifetime in minutes def lifetime prop_get('lifetime') end # api key lifetime in minutes def lifetime=(val) prop_set('lifetime', val) end end # class Key def key @subclasses['key'] ||= Key.new(parent_instance: self, create_children: @create_children) end @props={} end # class Api def api @subclasses['api'] ||= Api.new(parent_instance: self, create_children: @create_children) end class AdminLockout < ConfigClass def has_multiple_values? false end def _section :'admin-lockout' end @props={"failed-attempts"=> {"node-type"=>"element", "default"=>"10", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10", "help-string"=>"Number of failed login attempts to trigger lock-out"}, "lockout-time"=> {"node-type"=>"element", "default"=>"5", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60", "help-string"=>"Number of minutes to lock-out"}} # Number of failed login attempts to trigger lock-out def failed_attempts prop_get('failed-attempts') end # Number of failed login attempts to trigger lock-out def failed_attempts=(val) prop_set('failed-attempts', val) end # Number of minutes to lock-out def lockout_time prop_get('lockout-time') end # Number of minutes to lock-out def lockout_time=(val) prop_set('lockout-time', val) end end # class AdminLockout def admin_lockout @subclasses['admin-lockout'] ||= AdminLockout.new(parent_instance: self, create_children: @create_children) end class AdminSession < ConfigClass def has_multiple_values? false end def _section :'admin-session' end @props={"max-session-count__1"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"4", "prune-on"=>"non-fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__2"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"720", "prune-on"=>"non-fips-mode", "help-string"=>"Set the maximum session time (60-1499 minutes)", "regex"=>"^(([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}, "max-session-count__3"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=> "Set the maximum number of sessions administrators are allowed"}, "max-session-time__4"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"4", "default"=>"0", "prune-on"=>"fips-mode", "help-string"=>"Set the maximum session time (0, 60-1499 minutes)", "regex"=>"^((0)|([6-9][0-9])|([1-9][0-9][0-9])|(1[0-4][0-9][0-9]))$"}} # Set the maximum number of sessions administrators are allowed def max_session_count__1 prop_get('max-session-count__1') end # Set the maximum number of sessions administrators are allowed def max_session_count__1=(val) prop_set('max-session-count__1', val) end # Set the maximum session time (60-1499 minutes) def max_session_time__2 prop_get('max-session-time__2') end # Set the maximum session time (60-1499 minutes) def max_session_time__2=(val) prop_set('max-session-time__2', val) end # Set the maximum number of sessions administrators are allowed def max_session_count__3 prop_get('max-session-count__3') end # Set the maximum number of sessions administrators are allowed def max_session_count__3=(val) prop_set('max-session-count__3', val) end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4 prop_get('max-session-time__4') end # Set the maximum session time (0, 60-1499 minutes) def max_session_time__4=(val) prop_set('max-session-time__4', val) end end # class AdminSession def admin_session @subclasses['admin-session'] ||= AdminSession.new(parent_instance: self, create_children: @create_children) end class SecureConnServer < ConfigClass def has_multiple_values? false end def _section :'secure-conn-server' end class AuthorizationList < XML::ConfigClass def has_multiple_values? true end def _section :'authorization-list' end class Entry < ArrayConfigClass def has_multiple_values? false end def _section :'entry' end class Identifier < XML::ConfigClass def has_multiple_values? true end def _section :'identifier' end class Subject < ConfigClass def has_multiple_values? false end def _section :'subject' end @props={"common-name"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject Common Name"}} # Subject Common Name def common_name prop_get('common-name') end # Subject Common Name def common_name=(val) prop_set('common-name', val) end end # class Subject def subject @subclasses['subject'] ||= Subject.new(parent_instance: self, create_children: @create_children) end class SubjectAltName < ConfigClass def has_multiple_values? false end def _section :'subject-alt-name' end @props={"ip"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"ipspec", "help-string"=>"Subject alternate name IP"}, "hostname"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "minlen"=>"1", "maxlen"=>"63", "help-string"=>"Subject alternate name DNS"}, "email"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "regex"=>".*", "maxlen"=>"255", "help-string"=>"Email address of the contact person"}} # Subject alternate name IP def ip prop_get('ip') end # Subject alternate name IP def ip=(val) prop_set('ip', val) end # Subject alternate name DNS def hostname prop_get('hostname') end # Subject alternate name DNS def hostname=(val) prop_set('hostname', val) end # Email address of the contact person def email prop_get('email') end # Email address of the contact person def email=(val) prop_set('email', val) end end # class SubjectAltName def subject_alt_name @subclasses['subject-alt-name'] ||= SubjectAltName.new(parent_instance: self, create_children: @create_children) end @props={} end # class Identifier def identifier if @create_children @subclasses['identifier'] ||= Identifier.new(parent_instance: self, create_children: @create_children) else Identifier.new(parent_instance: self) end end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"63", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class AuthorizationList def authorization_list if @create_children @subclasses['authorization-list'] ||= AuthorizationList.new(parent_instance: self, create_children: @create_children) else AuthorizationList.new(parent_instance: self) end end @props={"ssl-tls-service-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SSL TLS service profile", "autocomplete"=>"yes", "memberof"=> ["##/panorama/ssl-tls-service-profile/entry/@name", "##/shared/ssl-tls-service-profile/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "optional"=>"yes", "maxlen"=>"255", "help-string"=>"profile for verifying client certificates", "autocomplete"=>"yes", "memberof"=> ["##/panorama/certificate-profile/entry/@name", "##/shared/certificate-profile/entry/@name"]}, "disable-pre-defined-cert"=> {"node-type"=>"element", "type"=>"bool", "optional"=>"yes", "default"=>"no", "help-string"=> "Disable connections using predefined certificates. Default setting: 'no'"}, "check-authorization-list"=> {"node-type"=>"element", "type"=>"bool", "default"=>"no", "help"=> "Check the authorization table for permitting incoming client connections. Default setting : 'no'", "optional"=>"yes"}} # SSL TLS service profile def ssl_tls_service_profile prop_get('ssl-tls-service-profile') end # SSL TLS service profile def ssl_tls_service_profile=(val) prop_set('ssl-tls-service-profile', val) end # profile for verifying client certificates def certificate_profile prop_get('certificate-profile') end # profile for verifying client certificates def certificate_profile=(val) prop_set('certificate-profile', val) end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert prop_get('disable-pre-defined-cert') end # Disable connections using predefined certificates. Default setting: 'no' def disable_pre_defined_cert=(val) prop_set('disable-pre-defined-cert', val) end def check_authorization_list prop_get('check-authorization-list') end def check_authorization_list=(val) prop_set('check-authorization-list', val) end end # class SecureConnServer def secure_conn_server @subclasses['secure-conn-server'] ||= SecureConnServer.new(parent_instance: self, create_children: @create_children) end class SecureConnClient < ConfigClass def has_multiple_values? false end def _section :'secure-conn-client' end class CertificateType < ConfigClass def has_multiple_values? false end def _section :'certificate-type' end class None < ConfigClass def has_multiple_values? false end def _section :'none' end @props={} end # class None def none @subclasses['none'] ||= None.new(parent_instance: self, create_children: @create_children) end class Local < ConfigClass def has_multiple_values? false end def _section :'local' end @props={"certificate"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"string", "maxlen"=>"255", "help-string"=> "Custom certificate used in management connections to Panorama and Log collectors", "autocomplete"=>"yes", "memberof"=> ["#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name", "#config/shared/certificate/entry[not(csr)][private-key and ca='no']/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # Custom certificate used in management connections to Panorama and Log collectors def certificate prop_get('certificate') end # Custom certificate used in management connections to Panorama and Log collectors def certificate=(val) prop_set('certificate', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Local def local @subclasses['local'] ||= Local.new(parent_instance: self, create_children: @create_children) end class Scep < ConfigClass def has_multiple_values? false end def _section :'scep' end @props={"scep-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "help-string"=>"SCEP profile name", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/scep/entry/@name", "#config/shared/scep/entry/@name"]}, "certificate-profile"=> {"node-type"=>"element", "type"=>"string", "maxlen"=>"255", "optional"=>"yes", "autocomplete"=>"yes", "memberof"=> ["#config/panorama/certificate-profile/entry/@name", "#config/shared/certificate-profile/entry/@name"]}} # SCEP profile name def scep_profile prop_get('scep-profile') end # SCEP profile name def scep_profile=(val) prop_set('scep-profile', val) end def certificate_profile prop_get('certificate-profile') end def certificate_profile=(val) prop_set('certificate-profile', val) end end # class Scep def scep @subclasses['scep'] ||= Scep.new(parent_instance: self, create_children: @create_children) end @props={} end # class CertificateType def certificate_type @subclasses['certificate-type'] ||= CertificateType.new(parent_instance: self, create_children: @create_children) end @props={} end # class SecureConnClient def secure_conn_client @subclasses['secure-conn-client'] ||= SecureConnClient.new(parent_instance: self, create_children: @create_children) end @props={"idle-timeout"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"multiple", "help-string"=>"default administrative session idle timeout in minutes", "multi-types"=> {"rangedint"=>{"min"=>"1", "max"=>"1440", "help-string"=>"minutes"}, "enum"=>[{"value"=>"0", "help-string"=>"never timeout"}]}}} # default administrative session idle timeout in minutes def idle_timeout prop_get('idle-timeout') end # default administrative session idle timeout in minutes def idle_timeout=(val) prop_set('idle-timeout', val) end end # class Management def management @subclasses['management'] ||= Management.new(parent_instance: self, create_children: @create_children) end @props={} end # class Setting def setting @subclasses['setting'] ||= Setting.new(parent_instance: self, create_children: @create_children) end class HighAvailability < ConfigClass def has_multiple_values? false end def _section :'high-availability' end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end class ElectionOption < ConfigClass def has_multiple_values? false end def _section :'election-option' end class Timers < ConfigClass def has_multiple_values? false end def _section :'timers' end class Recommended < ConfigClass def has_multiple_values? false end def _section :'recommended' end @props={} end # class Recommended def recommended @subclasses['recommended'] ||= Recommended.new(parent_instance: self, create_children: @create_children) end class Aggressive < ConfigClass def has_multiple_values? false end def _section :'aggressive' end @props={} end # class Aggressive def aggressive @subclasses['aggressive'] ||= Aggressive.new(parent_instance: self, create_children: @create_children) end class Advanced < ConfigClass def has_multiple_values? false end def _section :'advanced' end @props={"promotion-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to state change from Passive to Active, default 2000"}, "hello-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"8000", "max"=>"60000", "default"=>"8000", "help-string"=> "Interval in milliseconds to send Hello messages, default 8000"}, "heartbeat-interval"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1000", "max"=>"60000", "default"=>"2000", "help-string"=> "Interval in milliseconds to send Heartbeat pings, default 2000"}, "preemption-hold-time"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"1", "max"=>"60", "default"=>"1", "help-string"=> "Interval in minutes to stay in Passive before preempting Active device, default 1"}} # Interval in milliseconds to state change from Passive to Active, default 2000 def promotion_hold_time prop_get('promotion-hold-time') end # Interval in milliseconds to state change from Passive to Active, default 2000 def promotion_hold_time=(val) prop_set('promotion-hold-time', val) end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval prop_get('hello-interval') end # Interval in milliseconds to send Hello messages, default 8000 def hello_interval=(val) prop_set('hello-interval', val) end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval prop_get('heartbeat-interval') end # Interval in milliseconds to send Heartbeat pings, default 2000 def heartbeat_interval=(val) prop_set('heartbeat-interval', val) end # Interval in minutes to stay in Passive before preempting Active device, default 1 def preemption_hold_time prop_get('preemption-hold-time') end # Interval in minutes to stay in Passive before preempting Active device, default 1 def preemption_hold_time=(val) prop_set('preemption-hold-time', val) end end # class Advanced def advanced @subclasses['advanced'] ||= Advanced.new(parent_instance: self, create_children: @create_children) end @props={} end # class Timers def timers @subclasses['timers'] ||= Timers.new(parent_instance: self, create_children: @create_children) end @props={"priority"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"enum", "help-string"=>"Set priority of the local device", "enum"=> [{"value"=>"primary", "help-string"=>"Primary HA device"}, {"value"=>"secondary", "help-string"=>"Secondary HA device"}]}, "preemptive"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=> "Configure on both HA peers to allow preemption by Passive device based on priority, default no"}} # Set priority of the local device def priority prop_get('priority') end # Set priority of the local device def priority=(val) prop_set('priority', val) end # Configure on both HA peers to allow preemption by Passive device based on priority, default no def preemptive prop_get('preemptive') end # Configure on both HA peers to allow preemption by Passive device based on priority, default no def preemptive=(val) prop_set('preemptive', val) end end # class ElectionOption def election_option @subclasses['election-option'] ||= ElectionOption.new(parent_instance: self, create_children: @create_children) end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no", "help-string"=>"Enable high-availability"}} # Enable high-availability def enabled prop_get('enabled') end # Enable high-availability def enabled=(val) prop_set('enabled', val) end end # class HighAvailability def high_availability @subclasses['high-availability'] ||= HighAvailability.new(parent_instance: self, create_children: @create_children) end class Cluster < ConfigClass def has_multiple_values? false end def _section :'cluster' end class ServiceAdvertisement < ConfigClass def has_multiple_values? false end def _section :'service-advertisement' end class DnsService < ConfigClass def has_multiple_values? false end def _section :'dns-service' end @props={"enabled"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"bool", "default"=>"no"}} def enabled prop_get('enabled') end def enabled=(val) prop_set('enabled', val) end end # class DnsService def dns_service @subclasses['dns-service'] ||= DnsService.new(parent_instance: self, create_children: @create_children) end @props={} end # class ServiceAdvertisement def service_advertisement @subclasses['service-advertisement'] ||= ServiceAdvertisement.new(parent_instance: self, create_children: @create_children) end class Encryption < ConfigClass def has_multiple_values? false end def _section :'encryption' end @props={"enabled"=> {"node-type"=>"element", "type"=>"enum", "default"=>"yes", "help-string"=>"enable/disable cluster encrypted communication", "enum"=>[{"value"=>"yes"}, {"value"=>"no", "prune-on"=>"fips-mode"}]}} # enable/disable cluster encrypted communication def enabled prop_get('enabled') end # enable/disable cluster encrypted communication def enabled=(val) prop_set('enabled', val) end end # class Encryption def encryption @subclasses['encryption'] ||= Encryption.new(parent_instance: self, create_children: @create_children) end @props={} end # class Cluster def cluster @subclasses['cluster'] ||= Cluster.new(parent_instance: self, create_children: @create_children) end @props={} end # class Deviceconfig def deviceconfig @subclasses['deviceconfig'] ||= Deviceconfig.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"64", "regex"=>"^[0-9A-Z]+$", "help-string"=>"Wildfire appliance serial number"}} # Wildfire appliance serial number def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class WildfireAppliance def wildfire_appliance if @create_children @subclasses['wildfire-appliance'] ||= WildfireAppliance.new(parent_instance: self, create_children: @create_children) else WildfireAppliance.new(parent_instance: self) end end class Platform < ConfigClass def has_multiple_values? false end def _section :'platform' end class Limits < ConfigClass def has_multiple_values? false end def _section :'limits' end @props={"licensed-mgt-devices"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10000"}, "max-device-group"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10000"}, "max-templates"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10000"}, "max-template-stacks"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"10000"}, "max-ha-cluster-members"=> {"node-type"=>"element", "optional"=>"yes", "type"=>"rangedint", "min"=>"0", "max"=>"16"}} def licensed_mgt_devices prop_get('licensed-mgt-devices') end def licensed_mgt_devices=(val) prop_set('licensed-mgt-devices', val) end def max_device_group prop_get('max-device-group') end def max_device_group=(val) prop_set('max-device-group', val) end def max_templates prop_get('max-templates') end def max_templates=(val) prop_set('max-templates', val) end def max_template_stacks prop_get('max-template-stacks') end def max_template_stacks=(val) prop_set('max-template-stacks', val) end def max_ha_cluster_members prop_get('max-ha-cluster-members') end def max_ha_cluster_members=(val) prop_set('max-ha-cluster-members', val) end end # class Limits def limits @subclasses['limits'] ||= Limits.new(parent_instance: self, create_children: @create_children) end @props={} end # class Platform def platform @subclasses['platform'] ||= Platform.new(parent_instance: self, create_children: @create_children) end class Plugins < ConfigClass def has_multiple_values? false end def _section :'plugins' end @props={} end # class Plugins def plugins @subclasses['plugins'] ||= Plugins.new(parent_instance: self, create_children: @create_children) end @props={"@name"=> {"node-type"=>"attr-req", "type"=>"string", "maxlen"=>"31", "subtype"=>"object-name", "help-string"=>"alphanumeric string [ 0-9a-zA-Z._-]"}} # alphanumeric string [ 0-9a-zA-Z._-] def name prop_get('@name') end end # class Entry def entries return @subclasses['entry'] end def entry(*args, &block) array_class_setter(*args, klass: Entry, section: 'entry', &block) end @props={} end # class Devices def devices if @create_children @subclasses['devices'] ||= Devices.new(parent_instance: self, create_children: @create_children) else Devices.new(parent_instance: self) end end class Readonly < ConfigClass def has_multiple_values? false end def _section :'readonly' end @props={} end # class Readonly def readonly @subclasses['readonly'] ||= Readonly.new(parent_instance: self, create_children: @create_children) end @props={} end # class Config def config @subclasses['config'] ||= Config.new(parent_instance: nil, create_children: @create_children) end end end